haveapi-client 0.27.0 → 0.27.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a6231f3629c9e015d7e916dc7cf97466b30849db2a1fe86a521f5fd1b99fbb72
4
- data.tar.gz: 46cb500d05af0f1bdd25f4a2749d7d459ff8460d1477dea59b64e816162dc9e7
3
+ metadata.gz: b93b02b0f6d5111966c48ed916cb75760736fcee702526ac722c3e6fafb5ea01
4
+ data.tar.gz: fa1fb1592f032a65382b6e02fc652b818599ed4386c70a1c425177b40f4416c3
5
5
  SHA512:
6
- metadata.gz: 5afb270a053317c22c6a5748739423690743a02a1b3f8e58d1e045d33b4446bd0d96f5427ffc7c37f6cfbb3266b2cfd8801692d9f3c557843fe586e4a60a9535
7
- data.tar.gz: e42801e205282f72038c3777d819799be33569e63a9864ef13786e7346785cca469dd6128f9c3241f257d098bd089c9f9b3d8d47473f778019b8c30361833207
6
+ metadata.gz: f879311befd51bb6ce13f4114d3d251f0848f56025ad26c915ca57f0448e641af3c448c6234aea28477f6c8042d4ec2039425f40c8161ffc1c01be8ba53bec91
7
+ data.tar.gz: 2e04ca72e9e971459be53ccee44773d462adccfaa7293df273bcaf242804dd3f3d1896e41fb59944035b09b4f4ecd34003d77e393b2c79505923c82f4b6bc602
@@ -140,12 +140,13 @@ module HaveAPI::Client
140
140
  get_params = {}
141
141
 
142
142
  params.each do |k, v|
143
- get_params["#{input_namespace}[#{k}]"] = v
143
+ get_params["#{input_namespace}[#{k}]"] =
144
+ v.nil? ? '' : v
144
145
  end
145
146
 
146
147
  if meta
147
148
  meta.each do |k, v|
148
- get_params["_meta[#{k}]"] = v # FIXME: read _meta namespace from the description
149
+ get_params["_meta[#{k}]"] = v.nil? ? '' : v # FIXME: read _meta namespace from the description
149
150
  end
150
151
  end
151
152
 
@@ -1,6 +1,6 @@
1
1
  module HaveAPI
2
2
  module Client
3
3
  PROTOCOL_VERSION = '2.0'.freeze
4
- VERSION = '0.27.0'.freeze
4
+ VERSION = '0.27.2'.freeze
5
5
  end
6
6
  end
@@ -110,4 +110,31 @@ RSpec.describe HaveAPI::Client::Client do
110
110
  expect(err.errors[:t]).to include(a_string_matching(/not a valid string/))
111
111
  end
112
112
  end
113
+
114
+ it 'accepts nil for optional resource params' do
115
+ res = client.test.echo_resource_optional(project: nil)
116
+
117
+ expect(res).to be_a(HaveAPI::Client::Response)
118
+ expect(res[:project_provided]).to be(true)
119
+ expect(res[:project_nil]).to be(true)
120
+ expect(res[:project]).to be_nil
121
+ end
122
+
123
+ it 'accepts nil for optional typed params' do
124
+ res = client.test.echo_optional(dt: nil)
125
+
126
+ expect(res).to be_a(HaveAPI::Client::Response)
127
+ expect(res[:dt_provided]).to be(true)
128
+ expect(res[:dt_nil]).to be(true)
129
+ expect(res[:dt]).to be_nil
130
+ end
131
+
132
+ it 'accepts nil for optional typed params via GET' do
133
+ res = client.test.echo_optional_get(dt: nil)
134
+
135
+ expect(res).to be_a(HaveAPI::Client::Response)
136
+ expect(res[:dt_provided]).to be(true)
137
+ expect(res[:dt_nil]).to be(true)
138
+ expect(res[:dt]).to be_nil
139
+ end
113
140
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: haveapi-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.0
4
+ version: 0.27.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jakub Skokan