patch_ruby 1.9.0 → 1.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/Gemfile +1 -2
  4. data/Gemfile.lock +40 -44
  5. data/Makefile +2 -2
  6. data/lib/patch_ruby/api/estimates_api.rb +33 -25
  7. data/lib/patch_ruby/api/orders_api.rb +21 -16
  8. data/lib/patch_ruby/api/preferences_api.rb +17 -13
  9. data/lib/patch_ruby/api/projects_api.rb +9 -7
  10. data/lib/patch_ruby/api_client.rb +51 -49
  11. data/lib/patch_ruby/api_error.rb +1 -1
  12. data/lib/patch_ruby/configuration.rb +38 -9
  13. data/lib/patch_ruby/models/allocation.rb +21 -11
  14. data/lib/patch_ruby/models/create_bitcoin_estimate_request.rb +25 -19
  15. data/lib/patch_ruby/models/create_ethereum_estimate_request.rb +26 -21
  16. data/lib/patch_ruby/models/create_flight_estimate_request.rb +323 -0
  17. data/lib/patch_ruby/models/create_mass_estimate_request.rb +22 -13
  18. data/lib/patch_ruby/models/create_order_request.rb +21 -11
  19. data/lib/patch_ruby/models/create_preference_request.rb +21 -11
  20. data/lib/patch_ruby/models/create_shipping_estimate_request.rb +371 -0
  21. data/lib/patch_ruby/models/create_success_response.rb +247 -0
  22. data/lib/patch_ruby/models/create_vehicle_estimate_request.rb +326 -0
  23. data/lib/patch_ruby/models/error_response.rb +22 -13
  24. data/lib/patch_ruby/models/estimate.rb +22 -13
  25. data/lib/patch_ruby/models/estimate_list_response.rb +22 -13
  26. data/lib/patch_ruby/models/estimate_response.rb +22 -13
  27. data/lib/patch_ruby/models/meta_index_object.rb +23 -15
  28. data/lib/patch_ruby/models/order.rb +23 -15
  29. data/lib/patch_ruby/models/order_list_response.rb +22 -13
  30. data/lib/patch_ruby/models/order_response.rb +22 -13
  31. data/lib/patch_ruby/models/photo.rb +21 -11
  32. data/lib/patch_ruby/models/preference.rb +21 -11
  33. data/lib/patch_ruby/models/preference_list_response.rb +22 -13
  34. data/lib/patch_ruby/models/preference_response.rb +22 -13
  35. data/lib/patch_ruby/models/project.rb +24 -17
  36. data/lib/patch_ruby/models/project_list_response.rb +22 -13
  37. data/lib/patch_ruby/models/project_response.rb +22 -13
  38. data/lib/patch_ruby/models/sdg.rb +21 -11
  39. data/lib/patch_ruby/models/standard.rb +21 -11
  40. data/lib/patch_ruby/version.rb +2 -2
  41. data/lib/patch_ruby.rb +5 -1
  42. data/patch_ruby.gemspec +8 -3
  43. data/spec/api_client_spec.rb +34 -13
  44. data/spec/configuration_spec.rb +1 -1
  45. data/spec/integration/estimates_spec.rb +17 -1
  46. data/spec/integration/preferences_spec.rb +1 -1
  47. data/spec/models/create_mass_estimate_request_spec.rb +1 -1
  48. data/spec/models/error_response_spec.rb +1 -1
  49. data/spec/models/estimate_list_response_spec.rb +1 -1
  50. data/spec/models/estimate_response_spec.rb +1 -1
  51. data/spec/models/estimate_spec.rb +1 -1
  52. data/spec/models/meta_index_object_spec.rb +1 -1
  53. data/spec/models/order_list_response_spec.rb +1 -1
  54. data/spec/models/order_response_spec.rb +1 -1
  55. data/spec/models/order_spec.rb +1 -1
  56. data/spec/models/preference_list_response_spec.rb +1 -1
  57. data/spec/models/preference_response_spec.rb +1 -1
  58. data/spec/models/project_list_response_spec.rb +1 -1
  59. data/spec/models/project_response_spec.rb +1 -1
  60. data/spec/models/project_spec.rb +1 -1
  61. data/spec/spec_helper.rb +69 -61
  62. metadata +56 -58
  63. data/lib/patch_ruby/.api_client.rb.un~ +0 -0
  64. data/lib/patch_ruby/.configuration.rb.un~ +0 -0
  65. data/lib/patch_ruby/.version.rb.un~ +0 -0
  66. data/lib/patch_ruby/api/.orders_api.rb.un~ +0 -0
  67. data/lib/patch_ruby/models/.create_ethereum_estimate_request.rb.un~ +0 -0
  68. data/spec/.spec_helper.rb.un~ +0 -0
  69. data/spec/integration/.estimates_spec.rb.un~ +0 -0
  70. data/spec/integration/.orders_spec.rb.un~ +0 -0
  71. data/spec/integration/.preferences_spec.rb.un~ +0 -0
  72. data/spec/integration/.projects_spec.rb.un~ +0 -0
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class PreferenceListResponse
@@ -32,6 +33,11 @@ module Patch
32
33
  }
33
34
  end
34
35
 
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
35
41
  # Attribute type mapping.
36
42
  def self.openapi_types
37
43
  {
@@ -42,15 +48,14 @@ module Patch
42
48
  }
43
49
  end
44
50
 
45
- # Set with nullable attributes.
51
+ # List of attributes with nullable: true
46
52
  def self.openapi_nullable
47
- nullable_properties = Set.new
48
-
49
- nullable_properties.add("error")
50
-
51
- nullable_properties
53
+ Set.new([
54
+ :'error',
55
+ ])
52
56
  end
53
57
 
58
+
54
59
  # Allows models with corresponding API classes to delegate API operations to those API classes
55
60
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
56
61
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -160,7 +165,9 @@ module Patch
160
165
  def build_from_hash(attributes)
161
166
  return nil unless attributes.is_a?(Hash)
162
167
  self.class.openapi_types.each_pair do |key, type|
163
- if type =~ /\AArray<(.*)>/i
168
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
169
+ self.send("#{key}=", nil)
170
+ elsif type =~ /\AArray<(.*)>/i
164
171
  # check to ensure the input is an array given that the attribute
165
172
  # is documented as an array but the input is not
166
173
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -168,7 +175,7 @@ module Patch
168
175
  end
169
176
  elsif !attributes[self.class.attribute_map[key]].nil?
170
177
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
171
- end # or else data not found in attributes(hash), not an issue as the data can be optional
178
+ end
172
179
  end
173
180
 
174
181
  self
@@ -180,8 +187,8 @@ module Patch
180
187
  # @return [Object] Deserialized data
181
188
  def _deserialize(type, value)
182
189
  case type.to_sym
183
- when :DateTime
184
- DateTime.parse(value)
190
+ when :Time
191
+ Time.parse(value)
185
192
  when :Date
186
193
  Date.parse(value)
187
194
  when :String
@@ -211,7 +218,9 @@ module Patch
211
218
  end
212
219
  end
213
220
  else # model
214
- Patch.const_get(type).build_from_hash(value)
221
+ # models (e.g. Pet) or oneOf
222
+ klass = Patch.const_get(type)
223
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
215
224
  end
216
225
  end
217
226
 
@@ -237,7 +246,7 @@ module Patch
237
246
  is_nullable = self.class.openapi_nullable.include?(attr)
238
247
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
239
248
  end
240
-
249
+
241
250
  hash[param] = _to_hash(value)
242
251
  end
243
252
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class PreferenceResponse
@@ -29,6 +30,11 @@ module Patch
29
30
  }
30
31
  end
31
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
32
38
  # Attribute type mapping.
33
39
  def self.openapi_types
34
40
  {
@@ -38,15 +44,14 @@ module Patch
38
44
  }
39
45
  end
40
46
 
41
- # Set with nullable attributes.
47
+ # List of attributes with nullable: true
42
48
  def self.openapi_nullable
43
- nullable_properties = Set.new
44
-
45
- nullable_properties.add("error")
46
-
47
- nullable_properties
49
+ Set.new([
50
+ :'error',
51
+ ])
48
52
  end
49
53
 
54
+
50
55
  # Allows models with corresponding API classes to delegate API operations to those API classes
51
56
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
52
57
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -144,7 +149,9 @@ module Patch
144
149
  def build_from_hash(attributes)
145
150
  return nil unless attributes.is_a?(Hash)
146
151
  self.class.openapi_types.each_pair do |key, type|
147
- if type =~ /\AArray<(.*)>/i
152
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
153
+ self.send("#{key}=", nil)
154
+ elsif type =~ /\AArray<(.*)>/i
148
155
  # check to ensure the input is an array given that the attribute
149
156
  # is documented as an array but the input is not
150
157
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -152,7 +159,7 @@ module Patch
152
159
  end
153
160
  elsif !attributes[self.class.attribute_map[key]].nil?
154
161
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
- end # or else data not found in attributes(hash), not an issue as the data can be optional
162
+ end
156
163
  end
157
164
 
158
165
  self
@@ -164,8 +171,8 @@ module Patch
164
171
  # @return [Object] Deserialized data
165
172
  def _deserialize(type, value)
166
173
  case type.to_sym
167
- when :DateTime
168
- DateTime.parse(value)
174
+ when :Time
175
+ Time.parse(value)
169
176
  when :Date
170
177
  Date.parse(value)
171
178
  when :String
@@ -195,7 +202,9 @@ module Patch
195
202
  end
196
203
  end
197
204
  else # model
198
- Patch.const_get(type).build_from_hash(value)
205
+ # models (e.g. Pet) or oneOf
206
+ klass = Patch.const_get(type)
207
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
208
  end
200
209
  end
201
210
 
@@ -221,7 +230,7 @@ module Patch
221
230
  is_nullable = self.class.openapi_nullable.include?(attr)
222
231
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
232
  end
224
-
233
+
225
234
  hash[param] = _to_hash(value)
226
235
  end
227
236
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class Project
@@ -90,6 +91,11 @@ module Patch
90
91
  }
91
92
  end
92
93
 
94
+ # Returns all the JSON keys this model knows about
95
+ def self.acceptable_attributes
96
+ attribute_map.values
97
+ end
98
+
93
99
  # Attribute type mapping.
94
100
  def self.openapi_types
95
101
  {
@@ -108,19 +114,16 @@ module Patch
108
114
  }
109
115
  end
110
116
 
111
- # Set with nullable attributes.
117
+ # List of attributes with nullable: true
112
118
  def self.openapi_nullable
113
- nullable_properties = Set.new
114
-
115
- nullable_properties.add("photos")
116
-
117
- nullable_properties.add("standard")
118
-
119
- nullable_properties.add("sdgs")
120
-
121
- nullable_properties
119
+ Set.new([
120
+ :'photos',
121
+ :'standard',
122
+ :'sdgs'
123
+ ])
122
124
  end
123
125
 
126
+
124
127
  # Allows models with corresponding API classes to delegate API operations to those API classes
125
128
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
126
129
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -309,7 +312,9 @@ module Patch
309
312
  def build_from_hash(attributes)
310
313
  return nil unless attributes.is_a?(Hash)
311
314
  self.class.openapi_types.each_pair do |key, type|
312
- if type =~ /\AArray<(.*)>/i
315
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
316
+ self.send("#{key}=", nil)
317
+ elsif type =~ /\AArray<(.*)>/i
313
318
  # check to ensure the input is an array given that the attribute
314
319
  # is documented as an array but the input is not
315
320
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -317,7 +322,7 @@ module Patch
317
322
  end
318
323
  elsif !attributes[self.class.attribute_map[key]].nil?
319
324
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
320
- end # or else data not found in attributes(hash), not an issue as the data can be optional
325
+ end
321
326
  end
322
327
 
323
328
  self
@@ -329,8 +334,8 @@ module Patch
329
334
  # @return [Object] Deserialized data
330
335
  def _deserialize(type, value)
331
336
  case type.to_sym
332
- when :DateTime
333
- DateTime.parse(value)
337
+ when :Time
338
+ Time.parse(value)
334
339
  when :Date
335
340
  Date.parse(value)
336
341
  when :String
@@ -360,7 +365,9 @@ module Patch
360
365
  end
361
366
  end
362
367
  else # model
363
- Patch.const_get(type).build_from_hash(value)
368
+ # models (e.g. Pet) or oneOf
369
+ klass = Patch.const_get(type)
370
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
364
371
  end
365
372
  end
366
373
 
@@ -386,7 +393,7 @@ module Patch
386
393
  is_nullable = self.class.openapi_nullable.include?(attr)
387
394
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
388
395
  end
389
-
396
+
390
397
  hash[param] = _to_hash(value)
391
398
  end
392
399
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class ProjectListResponse
@@ -32,6 +33,11 @@ module Patch
32
33
  }
33
34
  end
34
35
 
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
35
41
  # Attribute type mapping.
36
42
  def self.openapi_types
37
43
  {
@@ -42,15 +48,14 @@ module Patch
42
48
  }
43
49
  end
44
50
 
45
- # Set with nullable attributes.
51
+ # List of attributes with nullable: true
46
52
  def self.openapi_nullable
47
- nullable_properties = Set.new
48
-
49
- nullable_properties.add("error")
50
-
51
- nullable_properties
53
+ Set.new([
54
+ :'error',
55
+ ])
52
56
  end
53
57
 
58
+
54
59
  # Allows models with corresponding API classes to delegate API operations to those API classes
55
60
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
56
61
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -160,7 +165,9 @@ module Patch
160
165
  def build_from_hash(attributes)
161
166
  return nil unless attributes.is_a?(Hash)
162
167
  self.class.openapi_types.each_pair do |key, type|
163
- if type =~ /\AArray<(.*)>/i
168
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
169
+ self.send("#{key}=", nil)
170
+ elsif type =~ /\AArray<(.*)>/i
164
171
  # check to ensure the input is an array given that the attribute
165
172
  # is documented as an array but the input is not
166
173
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -168,7 +175,7 @@ module Patch
168
175
  end
169
176
  elsif !attributes[self.class.attribute_map[key]].nil?
170
177
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
171
- end # or else data not found in attributes(hash), not an issue as the data can be optional
178
+ end
172
179
  end
173
180
 
174
181
  self
@@ -180,8 +187,8 @@ module Patch
180
187
  # @return [Object] Deserialized data
181
188
  def _deserialize(type, value)
182
189
  case type.to_sym
183
- when :DateTime
184
- DateTime.parse(value)
190
+ when :Time
191
+ Time.parse(value)
185
192
  when :Date
186
193
  Date.parse(value)
187
194
  when :String
@@ -211,7 +218,9 @@ module Patch
211
218
  end
212
219
  end
213
220
  else # model
214
- Patch.const_get(type).build_from_hash(value)
221
+ # models (e.g. Pet) or oneOf
222
+ klass = Patch.const_get(type)
223
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
215
224
  end
216
225
  end
217
226
 
@@ -237,7 +246,7 @@ module Patch
237
246
  is_nullable = self.class.openapi_nullable.include?(attr)
238
247
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
239
248
  end
240
-
249
+
241
250
  hash[param] = _to_hash(value)
242
251
  end
243
252
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class ProjectResponse
@@ -29,6 +30,11 @@ module Patch
29
30
  }
30
31
  end
31
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
32
38
  # Attribute type mapping.
33
39
  def self.openapi_types
34
40
  {
@@ -38,15 +44,14 @@ module Patch
38
44
  }
39
45
  end
40
46
 
41
- # Set with nullable attributes.
47
+ # List of attributes with nullable: true
42
48
  def self.openapi_nullable
43
- nullable_properties = Set.new
44
-
45
- nullable_properties.add("error")
46
-
47
- nullable_properties
49
+ Set.new([
50
+ :'error',
51
+ ])
48
52
  end
49
53
 
54
+
50
55
  # Allows models with corresponding API classes to delegate API operations to those API classes
51
56
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
52
57
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -144,7 +149,9 @@ module Patch
144
149
  def build_from_hash(attributes)
145
150
  return nil unless attributes.is_a?(Hash)
146
151
  self.class.openapi_types.each_pair do |key, type|
147
- if type =~ /\AArray<(.*)>/i
152
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
153
+ self.send("#{key}=", nil)
154
+ elsif type =~ /\AArray<(.*)>/i
148
155
  # check to ensure the input is an array given that the attribute
149
156
  # is documented as an array but the input is not
150
157
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -152,7 +159,7 @@ module Patch
152
159
  end
153
160
  elsif !attributes[self.class.attribute_map[key]].nil?
154
161
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
- end # or else data not found in attributes(hash), not an issue as the data can be optional
162
+ end
156
163
  end
157
164
 
158
165
  self
@@ -164,8 +171,8 @@ module Patch
164
171
  # @return [Object] Deserialized data
165
172
  def _deserialize(type, value)
166
173
  case type.to_sym
167
- when :DateTime
168
- DateTime.parse(value)
174
+ when :Time
175
+ Time.parse(value)
169
176
  when :Date
170
177
  Date.parse(value)
171
178
  when :String
@@ -195,7 +202,9 @@ module Patch
195
202
  end
196
203
  end
197
204
  else # model
198
- Patch.const_get(type).build_from_hash(value)
205
+ # models (e.g. Pet) or oneOf
206
+ klass = Patch.const_get(type)
207
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
208
  end
200
209
  end
201
210
 
@@ -221,7 +230,7 @@ module Patch
221
230
  is_nullable = self.class.openapi_nullable.include?(attr)
222
231
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
232
  end
224
-
233
+
225
234
  hash[param] = _to_hash(value)
226
235
  end
227
236
  hash