melio-platform-api-client 3.1.4

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of melio-platform-api-client might be problematic. Click here for more details.

Files changed (173) hide show
  1. checksums.yaml +7 -0
  2. data/lib/melio-platform-api-client.rb +33 -0
  3. data/spec/api/accounts_api_spec.rb +71 -0
  4. data/spec/api/auth_api_spec.rb +48 -0
  5. data/spec/api/charges_api_spec.rb +90 -0
  6. data/spec/api/checkouts_api_spec.rb +93 -0
  7. data/spec/api/delivery_methods_api_spec.rb +115 -0
  8. data/spec/api/files_api_spec.rb +85 -0
  9. data/spec/api/financing_api_spec.rb +75 -0
  10. data/spec/api/funding_sources_api_spec.rb +88 -0
  11. data/spec/api/merchants_api_spec.rb +49 -0
  12. data/spec/api/payment_intents_api_spec.rb +114 -0
  13. data/spec/api/payments_api_spec.rb +88 -0
  14. data/spec/api/vendor_directory_api_spec.rb +62 -0
  15. data/spec/api/vendors_api_spec.rb +170 -0
  16. data/spec/api/webhooks_api_spec.rb +118 -0
  17. data/spec/api_client_spec.rb +226 -0
  18. data/spec/configuration_spec.rb +42 -0
  19. data/spec/models/account_all_of_spec.rb +50 -0
  20. data/spec/models/account_spec.rb +62 -0
  21. data/spec/models/add_to_my_vendor_parameters_delivery_method_biller_account_spec.rb +34 -0
  22. data/spec/models/add_to_my_vendor_parameters_delivery_method_spec.rb +40 -0
  23. data/spec/models/add_to_my_vendor_parameters_spec.rb +34 -0
  24. data/spec/models/address_spec.rb +58 -0
  25. data/spec/models/adjustment_spec.rb +40 -0
  26. data/spec/models/bank_account_spec.rb +46 -0
  27. data/spec/models/bank_account_type_spec.rb +28 -0
  28. data/spec/models/biller_account_spec.rb +34 -0
  29. data/spec/models/card_spec.rb +52 -0
  30. data/spec/models/charge_all_of_spec.rb +68 -0
  31. data/spec/models/charge_spec.rb +80 -0
  32. data/spec/models/checkout_all_of_buyer_spec.rb +58 -0
  33. data/spec/models/checkout_all_of_spec.rb +170 -0
  34. data/spec/models/checkout_spec.rb +182 -0
  35. data/spec/models/company_spec.rb +64 -0
  36. data/spec/models/confirm_payment_intents_response_spec.rb +34 -0
  37. data/spec/models/currency_spec.rb +28 -0
  38. data/spec/models/deleted_response_spec.rb +34 -0
  39. data/spec/models/delivery_method_all_of_spec.rb +40 -0
  40. data/spec/models/delivery_method_details_spec.rb +31 -0
  41. data/spec/models/delivery_method_spec.rb +52 -0
  42. data/spec/models/delivery_method_type_spec.rb +28 -0
  43. data/spec/models/delivery_preference_spec.rb +64 -0
  44. data/spec/models/delivery_preference_type_spec.rb +28 -0
  45. data/spec/models/domestic_wire_account_address_spec.rb +46 -0
  46. data/spec/models/domestic_wire_account_spec.rb +46 -0
  47. data/spec/models/error_response_spec.rb +34 -0
  48. data/spec/models/file_info_all_of_spec.rb +34 -0
  49. data/spec/models/file_info_spec.rb +46 -0
  50. data/spec/models/financing_dropdown_options_spec.rb +40 -0
  51. data/spec/models/financing_fields_spec.rb +64 -0
  52. data/spec/models/financing_spec.rb +56 -0
  53. data/spec/models/funding_source_all_of_spec.rb +46 -0
  54. data/spec/models/funding_source_details_spec.rb +31 -0
  55. data/spec/models/funding_source_spec.rb +58 -0
  56. data/spec/models/funding_source_type_spec.rb +28 -0
  57. data/spec/models/get_accounts_account_id_response_spec.rb +34 -0
  58. data/spec/models/get_accounts_response_spec.rb +34 -0
  59. data/spec/models/get_charges_charge_id_response_spec.rb +34 -0
  60. data/spec/models/get_charges_response_spec.rb +34 -0
  61. data/spec/models/get_checkouts_checkout_id_response_spec.rb +34 -0
  62. data/spec/models/get_delivery_methods_delivery_method_id_response_spec.rb +34 -0
  63. data/spec/models/get_delivery_methods_response_spec.rb +34 -0
  64. data/spec/models/get_files_file_id_data_response_data_customer_info_spec.rb +34 -0
  65. data/spec/models/get_files_file_id_data_response_data_invoice_info_spec.rb +40 -0
  66. data/spec/models/get_files_file_id_data_response_data_spec.rb +58 -0
  67. data/spec/models/get_files_file_id_data_response_data_vendor_info_spec.rb +40 -0
  68. data/spec/models/get_files_file_id_data_response_spec.rb +34 -0
  69. data/spec/models/get_files_file_id_response_spec.rb +34 -0
  70. data/spec/models/get_files_response_spec.rb +34 -0
  71. data/spec/models/get_financing_response_spec.rb +34 -0
  72. data/spec/models/get_funding_sources_funding_source_id_response_spec.rb +34 -0
  73. data/spec/models/get_funding_sources_response_spec.rb +34 -0
  74. data/spec/models/get_payment_intents_payment_intent_id_response_spec.rb +34 -0
  75. data/spec/models/get_payment_intents_response_spec.rb +34 -0
  76. data/spec/models/get_payments_payment_id_response_spec.rb +34 -0
  77. data/spec/models/get_payments_response_spec.rb +34 -0
  78. data/spec/models/get_vendor_directory_response_spec.rb +34 -0
  79. data/spec/models/get_vendors_response_spec.rb +34 -0
  80. data/spec/models/get_vendors_vendor_id_delivery_methods_response_spec.rb +34 -0
  81. data/spec/models/get_vendors_vendor_id_response_spec.rb +34 -0
  82. data/spec/models/get_webhooks_checkouts_response_spec.rb +34 -0
  83. data/spec/models/get_webhooks_payments_response_spec.rb +34 -0
  84. data/spec/models/get_webhooks_response_spec.rb +34 -0
  85. data/spec/models/invoice_spec.rb +40 -0
  86. data/spec/models/line_item_spec.rb +70 -0
  87. data/spec/models/merchant_all_of_spec.rb +82 -0
  88. data/spec/models/merchant_spec.rb +94 -0
  89. data/spec/models/model_error_all_of_spec.rb +40 -0
  90. data/spec/models/model_error_spec.rb +46 -0
  91. data/spec/models/object_spec.rb +40 -0
  92. data/spec/models/paper_check_spec.rb +40 -0
  93. data/spec/models/partial_address_spec.rb +58 -0
  94. data/spec/models/patch_charges_charge_id_request_spec.rb +34 -0
  95. data/spec/models/patch_charges_charge_id_response_spec.rb +34 -0
  96. data/spec/models/patch_payment_intents_payment_intent_id_request_bill_info_spec.rb +58 -0
  97. data/spec/models/patch_payment_intents_payment_intent_id_request_spec.rb +70 -0
  98. data/spec/models/patch_payment_intents_payment_intent_id_response_spec.rb +34 -0
  99. data/spec/models/patch_vendors_vendor_id_request_contact_spec.rb +46 -0
  100. data/spec/models/patch_vendors_vendor_id_request_spec.rb +40 -0
  101. data/spec/models/patch_vendors_vendor_id_response_spec.rb +34 -0
  102. data/spec/models/payment_all_of_spec.rb +116 -0
  103. data/spec/models/payment_fee_spec.rb +40 -0
  104. data/spec/models/payment_intent_all_of_bill_info_spec.rb +70 -0
  105. data/spec/models/payment_intent_all_of_spec.rb +110 -0
  106. data/spec/models/payment_intent_spec.rb +122 -0
  107. data/spec/models/payment_spec.rb +128 -0
  108. data/spec/models/person_spec.rb +46 -0
  109. data/spec/models/plaid_details_spec.rb +40 -0
  110. data/spec/models/post_accounts_request_spec.rb +46 -0
  111. data/spec/models/post_accounts_response_spec.rb +34 -0
  112. data/spec/models/post_auth_response_data_spec.rb +46 -0
  113. data/spec/models/post_auth_response_spec.rb +34 -0
  114. data/spec/models/post_checkouts_checkout_id_capture_request_invoice_spec.rb +40 -0
  115. data/spec/models/post_checkouts_checkout_id_capture_request_spec.rb +46 -0
  116. data/spec/models/post_checkouts_checkout_id_complete_request_spec.rb +52 -0
  117. data/spec/models/post_checkouts_request_spec.rb +124 -0
  118. data/spec/models/post_checkouts_response_spec.rb +34 -0
  119. data/spec/models/post_delivery_methods_request_details_spec.rb +31 -0
  120. data/spec/models/post_delivery_methods_request_spec.rb +40 -0
  121. data/spec/models/post_delivery_methods_response_spec.rb +34 -0
  122. data/spec/models/post_files_response_spec.rb +34 -0
  123. data/spec/models/post_financing_request_fields_spec.rb +40 -0
  124. data/spec/models/post_financing_request_spec.rb +34 -0
  125. data/spec/models/post_financing_response_spec.rb +34 -0
  126. data/spec/models/post_financing_transactional_request_spec.rb +40 -0
  127. data/spec/models/post_financing_transactional_response_data_spec.rb +44 -0
  128. data/spec/models/post_financing_transactional_response_spec.rb +34 -0
  129. data/spec/models/post_funding_sources_request_details_spec.rb +31 -0
  130. data/spec/models/post_funding_sources_request_spec.rb +50 -0
  131. data/spec/models/post_funding_sources_response_spec.rb +34 -0
  132. data/spec/models/post_merchants_request_spec.rb +76 -0
  133. data/spec/models/post_merchants_response_spec.rb +34 -0
  134. data/spec/models/post_payment_intents_bulk_request_spec.rb +34 -0
  135. data/spec/models/post_payment_intents_bulk_response_spec.rb +34 -0
  136. data/spec/models/post_payment_intents_payment_intent_id_payment_response_spec.rb +34 -0
  137. data/spec/models/post_payment_intents_request_bill_info_spec.rb +58 -0
  138. data/spec/models/post_payment_intents_request_spec.rb +70 -0
  139. data/spec/models/post_payment_intents_response_spec.rb +34 -0
  140. data/spec/models/post_payments_payment_id_recover_request_spec.rb +58 -0
  141. data/spec/models/post_payments_payment_id_recover_response_spec.rb +34 -0
  142. data/spec/models/post_vendors_bulk_request_spec.rb +34 -0
  143. data/spec/models/post_vendors_bulk_response_spec.rb +34 -0
  144. data/spec/models/post_vendors_from_vendor_directory_request_delivery_method_spec.rb +40 -0
  145. data/spec/models/post_vendors_from_vendor_directory_request_spec.rb +40 -0
  146. data/spec/models/post_vendors_from_vendor_directory_response_spec.rb +34 -0
  147. data/spec/models/post_vendors_request_spec.rb +40 -0
  148. data/spec/models/post_vendors_response_spec.rb +34 -0
  149. data/spec/models/post_vendors_vendor_id_delivery_methods_response_spec.rb +34 -0
  150. data/spec/models/post_webhooks_checkouts_request_spec.rb +34 -0
  151. data/spec/models/post_webhooks_checkouts_response_spec.rb +34 -0
  152. data/spec/models/post_webhooks_payments_request_spec.rb +34 -0
  153. data/spec/models/post_webhooks_payments_response_spec.rb +34 -0
  154. data/spec/models/put_payment_intents_request_spec.rb +88 -0
  155. data/spec/models/put_payment_intents_response_spec.rb +34 -0
  156. data/spec/models/recover_payment_request_spec.rb +88 -0
  157. data/spec/models/recover_payment_response_spec.rb +34 -0
  158. data/spec/models/short_history_spec.rb +46 -0
  159. data/spec/models/taba_pay_details_card_owner_spec.rb +40 -0
  160. data/spec/models/taba_pay_details_spec.rb +70 -0
  161. data/spec/models/tax_info_spec.rb +44 -0
  162. data/spec/models/vendor_all_of_contact_spec.rb +46 -0
  163. data/spec/models/vendor_all_of_spec.rb +46 -0
  164. data/spec/models/vendor_directory_contact_spec.rb +52 -0
  165. data/spec/models/vendor_directory_delivery_method_spec.rb +34 -0
  166. data/spec/models/vendor_directory_not_found_response_spec.rb +34 -0
  167. data/spec/models/vendor_directory_spec.rb +58 -0
  168. data/spec/models/vendor_spec.rb +58 -0
  169. data/spec/models/virtual_account_spec.rb +46 -0
  170. data/spec/models/webhook_spec.rb +40 -0
  171. data/spec/models/with_unknown_data_spec.rb +34 -0
  172. data/spec/spec_helper.rb +111 -0
  173. metadata +424 -0
@@ -0,0 +1,118 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for MelioPlatformApiClient::WebhooksApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'WebhooksApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = MelioPlatformApiClient::WebhooksApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of WebhooksApi' do
30
+ it 'should create an instance of WebhooksApi' do
31
+ expect(@api_instance).to be_instance_of(MelioPlatformApiClient::WebhooksApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for delete_webhooks_checkouts
36
+ # Delete the Webhook for Checkouts
37
+ # Disable the URL registered for receiving Checkout-related webhooks
38
+ # @param idempotency_key Unique idempotency key
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [DeletedResponse]
41
+ describe 'delete_webhooks_checkouts test' do
42
+ it 'should work' do
43
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
44
+ end
45
+ end
46
+
47
+ # unit tests for delete_webhooks_payments
48
+ # Delete the Webhook for Payments
49
+ # Disable the URL registered for receiving Payments-related webhooks
50
+ # @param idempotency_key Unique idempotency key
51
+ # @param [Hash] opts the optional parameters
52
+ # @return [DeletedResponse]
53
+ describe 'delete_webhooks_payments test' do
54
+ it 'should work' do
55
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
56
+ end
57
+ end
58
+
59
+ # unit tests for get_webhooks
60
+ # Retrieve all Webhooks
61
+ # Retrieve a list of all webhooks configured for the Account
62
+ # @param [Hash] opts the optional parameters
63
+ # @return [GetWebhooksResponse]
64
+ describe 'get_webhooks test' do
65
+ it 'should work' do
66
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
67
+ end
68
+ end
69
+
70
+ # unit tests for get_webhooks_checkouts
71
+ # Retrieve Status of Webhook for Checkouts
72
+ # Return the current URL registered for receiving Checkout-related webhooks
73
+ # @param [Hash] opts the optional parameters
74
+ # @return [GetWebhooksCheckoutsResponse]
75
+ describe 'get_webhooks_checkouts test' do
76
+ it 'should work' do
77
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
78
+ end
79
+ end
80
+
81
+ # unit tests for get_webhooks_payments
82
+ # Retrieve Status of Webhook for Payments
83
+ # Return the current URL registered for receiving Payments-related webhooks
84
+ # @param [Hash] opts the optional parameters
85
+ # @return [GetWebhooksPaymentsResponse]
86
+ describe 'get_webhooks_payments test' do
87
+ it 'should work' do
88
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
89
+ end
90
+ end
91
+
92
+ # unit tests for post_webhooks_checkouts
93
+ # Register a Webhook for Checkouts
94
+ # Update the URL registered for receiving Checkout-related webhooks
95
+ # @param idempotency_key Unique idempotency key
96
+ # @param [Hash] opts the optional parameters
97
+ # @option opts [PostWebhooksCheckoutsRequest] :post_webhooks_checkouts_request
98
+ # @return [PostWebhooksCheckoutsResponse]
99
+ describe 'post_webhooks_checkouts test' do
100
+ it 'should work' do
101
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
102
+ end
103
+ end
104
+
105
+ # unit tests for post_webhooks_payments
106
+ # Register a Webhook for Payments
107
+ # Update the URL registered for receiving Payments-related webhooks
108
+ # @param idempotency_key Unique idempotency key
109
+ # @param [Hash] opts the optional parameters
110
+ # @option opts [PostWebhooksPaymentsRequest] :post_webhooks_payments_request
111
+ # @return [PostWebhooksPaymentsResponse]
112
+ describe 'post_webhooks_payments test' do
113
+ it 'should work' do
114
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
115
+ end
116
+ end
117
+
118
+ end
@@ -0,0 +1,226 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+
15
+ describe MelioPlatformApiClient::ApiClient do
16
+ context 'initialization' do
17
+ context 'URL stuff' do
18
+ context 'host' do
19
+ it 'removes http from host' do
20
+ MelioPlatformApiClient.configure { |c| c.host = 'http://example.com' }
21
+ expect(MelioPlatformApiClient::Configuration.default.host).to eq('example.com')
22
+ end
23
+
24
+ it 'removes https from host' do
25
+ MelioPlatformApiClient.configure { |c| c.host = 'https://wookiee.com' }
26
+ expect(MelioPlatformApiClient::ApiClient.default.config.host).to eq('wookiee.com')
27
+ end
28
+
29
+ it 'removes trailing path from host' do
30
+ MelioPlatformApiClient.configure { |c| c.host = 'hobo.com/v4' }
31
+ expect(MelioPlatformApiClient::Configuration.default.host).to eq('hobo.com')
32
+ end
33
+ end
34
+
35
+ context 'base_path' do
36
+ it "prepends a slash to base_path" do
37
+ MelioPlatformApiClient.configure { |c| c.base_path = 'v4/dog' }
38
+ expect(MelioPlatformApiClient::Configuration.default.base_path).to eq('/v4/dog')
39
+ end
40
+
41
+ it "doesn't prepend a slash if one is already there" do
42
+ MelioPlatformApiClient.configure { |c| c.base_path = '/v4/dog' }
43
+ expect(MelioPlatformApiClient::Configuration.default.base_path).to eq('/v4/dog')
44
+ end
45
+
46
+ it "ends up as a blank string if nil" do
47
+ MelioPlatformApiClient.configure { |c| c.base_path = nil }
48
+ expect(MelioPlatformApiClient::Configuration.default.base_path).to eq('')
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ describe 'params_encoding in #build_request' do
55
+ let(:config) { MelioPlatformApiClient::Configuration.new }
56
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new(config) }
57
+
58
+ it 'defaults to nil' do
59
+ expect(MelioPlatformApiClient::Configuration.default.params_encoding).to eq(nil)
60
+ expect(config.params_encoding).to eq(nil)
61
+
62
+ request = api_client.build_request(:get, '/test')
63
+ expect(request.options[:params_encoding]).to eq(nil)
64
+ end
65
+
66
+ it 'can be customized' do
67
+ config.params_encoding = :multi
68
+ request = api_client.build_request(:get, '/test')
69
+ expect(request.options[:params_encoding]).to eq(:multi)
70
+ end
71
+ end
72
+
73
+ describe 'timeout in #build_request' do
74
+ let(:config) { MelioPlatformApiClient::Configuration.new }
75
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new(config) }
76
+
77
+ it 'defaults to 0' do
78
+ expect(MelioPlatformApiClient::Configuration.default.timeout).to eq(0)
79
+ expect(config.timeout).to eq(0)
80
+
81
+ request = api_client.build_request(:get, '/test')
82
+ expect(request.options[:timeout]).to eq(0)
83
+ end
84
+
85
+ it 'can be customized' do
86
+ config.timeout = 100
87
+ request = api_client.build_request(:get, '/test')
88
+ expect(request.options[:timeout]).to eq(100)
89
+ end
90
+ end
91
+
92
+ describe '#deserialize' do
93
+ it "handles Array<Integer>" do
94
+ api_client = MelioPlatformApiClient::ApiClient.new
95
+ headers = { 'Content-Type' => 'application/json' }
96
+ response = double('response', headers: headers, body: '[12, 34]')
97
+ data = api_client.deserialize(response, 'Array<Integer>')
98
+ expect(data).to be_instance_of(Array)
99
+ expect(data).to eq([12, 34])
100
+ end
101
+
102
+ it 'handles Array<Array<Integer>>' do
103
+ api_client = MelioPlatformApiClient::ApiClient.new
104
+ headers = { 'Content-Type' => 'application/json' }
105
+ response = double('response', headers: headers, body: '[[12, 34], [56]]')
106
+ data = api_client.deserialize(response, 'Array<Array<Integer>>')
107
+ expect(data).to be_instance_of(Array)
108
+ expect(data).to eq([[12, 34], [56]])
109
+ end
110
+
111
+ it 'handles Hash<String, String>' do
112
+ api_client = MelioPlatformApiClient::ApiClient.new
113
+ headers = { 'Content-Type' => 'application/json' }
114
+ response = double('response', headers: headers, body: '{"message": "Hello"}')
115
+ data = api_client.deserialize(response, 'Hash<String, String>')
116
+ expect(data).to be_instance_of(Hash)
117
+ expect(data).to eq(:message => 'Hello')
118
+ end
119
+ end
120
+
121
+ describe "#object_to_hash" do
122
+ it 'ignores nils and includes empty arrays' do
123
+ # uncomment below to test object_to_hash for model
124
+ # api_client = MelioPlatformApiClient::ApiClient.new
125
+ # _model = MelioPlatformApiClient::ModelName.new
126
+ # update the model attribute below
127
+ # _model.id = 1
128
+ # update the expected value (hash) below
129
+ # expected = {id: 1, name: '', tags: []}
130
+ # expect(api_client.object_to_hash(_model)).to eq(expected)
131
+ end
132
+ end
133
+
134
+ describe '#build_collection_param' do
135
+ let(:param) { ['aa', 'bb', 'cc'] }
136
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new }
137
+
138
+ it 'works for csv' do
139
+ expect(api_client.build_collection_param(param, :csv)).to eq('aa,bb,cc')
140
+ end
141
+
142
+ it 'works for ssv' do
143
+ expect(api_client.build_collection_param(param, :ssv)).to eq('aa bb cc')
144
+ end
145
+
146
+ it 'works for tsv' do
147
+ expect(api_client.build_collection_param(param, :tsv)).to eq("aa\tbb\tcc")
148
+ end
149
+
150
+ it 'works for pipes' do
151
+ expect(api_client.build_collection_param(param, :pipes)).to eq('aa|bb|cc')
152
+ end
153
+
154
+ it 'works for multi' do
155
+ expect(api_client.build_collection_param(param, :multi)).to eq(['aa', 'bb', 'cc'])
156
+ end
157
+
158
+ it 'fails for invalid collection format' do
159
+ expect { api_client.build_collection_param(param, :INVALID) }.to raise_error(RuntimeError, 'unknown collection format: :INVALID')
160
+ end
161
+ end
162
+
163
+ describe '#json_mime?' do
164
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new }
165
+
166
+ it 'works' do
167
+ expect(api_client.json_mime?(nil)).to eq false
168
+ expect(api_client.json_mime?('')).to eq false
169
+
170
+ expect(api_client.json_mime?('application/json')).to eq true
171
+ expect(api_client.json_mime?('application/json; charset=UTF8')).to eq true
172
+ expect(api_client.json_mime?('APPLICATION/JSON')).to eq true
173
+
174
+ expect(api_client.json_mime?('application/xml')).to eq false
175
+ expect(api_client.json_mime?('text/plain')).to eq false
176
+ expect(api_client.json_mime?('application/jsonp')).to eq false
177
+ end
178
+ end
179
+
180
+ describe '#select_header_accept' do
181
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new }
182
+
183
+ it 'works' do
184
+ expect(api_client.select_header_accept(nil)).to be_nil
185
+ expect(api_client.select_header_accept([])).to be_nil
186
+
187
+ expect(api_client.select_header_accept(['application/json'])).to eq('application/json')
188
+ expect(api_client.select_header_accept(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
189
+ expect(api_client.select_header_accept(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
190
+
191
+ expect(api_client.select_header_accept(['application/xml'])).to eq('application/xml')
192
+ expect(api_client.select_header_accept(['text/html', 'application/xml'])).to eq('text/html,application/xml')
193
+ end
194
+ end
195
+
196
+ describe '#select_header_content_type' do
197
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new }
198
+
199
+ it 'works' do
200
+ expect(api_client.select_header_content_type(nil)).to be_nil
201
+ expect(api_client.select_header_content_type([])).to be_nil
202
+
203
+ expect(api_client.select_header_content_type(['application/json'])).to eq('application/json')
204
+ expect(api_client.select_header_content_type(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
205
+ expect(api_client.select_header_content_type(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
206
+ expect(api_client.select_header_content_type(['application/xml'])).to eq('application/xml')
207
+ expect(api_client.select_header_content_type(['text/plain', 'application/xml'])).to eq('text/plain')
208
+ end
209
+ end
210
+
211
+ describe '#sanitize_filename' do
212
+ let(:api_client) { MelioPlatformApiClient::ApiClient.new }
213
+
214
+ it 'works' do
215
+ expect(api_client.sanitize_filename('sun')).to eq('sun')
216
+ expect(api_client.sanitize_filename('sun.gif')).to eq('sun.gif')
217
+ expect(api_client.sanitize_filename('../sun.gif')).to eq('sun.gif')
218
+ expect(api_client.sanitize_filename('/var/tmp/sun.gif')).to eq('sun.gif')
219
+ expect(api_client.sanitize_filename('./sun.gif')).to eq('sun.gif')
220
+ expect(api_client.sanitize_filename('..\sun.gif')).to eq('sun.gif')
221
+ expect(api_client.sanitize_filename('\var\tmp\sun.gif')).to eq('sun.gif')
222
+ expect(api_client.sanitize_filename('c:\var\tmp\sun.gif')).to eq('sun.gif')
223
+ expect(api_client.sanitize_filename('.\sun.gif')).to eq('sun.gif')
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,42 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+
15
+ describe MelioPlatformApiClient::Configuration do
16
+ let(:config) { MelioPlatformApiClient::Configuration.default }
17
+
18
+ before(:each) do
19
+ # uncomment below to setup host and base_path
20
+ # require 'URI'
21
+ # uri = URI.parse("https://api.melio.com/v1")
22
+ # MelioPlatformApiClient.configure do |c|
23
+ # c.host = uri.host
24
+ # c.base_path = uri.path
25
+ # end
26
+ end
27
+
28
+ describe '#base_url' do
29
+ it 'should have the default value' do
30
+ # uncomment below to test default value of the base path
31
+ # expect(config.base_url).to eq("https://api.melio.com/v1")
32
+ end
33
+
34
+ it 'should remove trailing slashes' do
35
+ [nil, '', '/', '//'].each do |base_path|
36
+ config.base_path = base_path
37
+ # uncomment below to test trailing slashes
38
+ # expect(config.base_url).to eq("https://api.melio.com/v1")
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,50 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for MelioPlatformApiClient::AccountAllOf
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe MelioPlatformApiClient::AccountAllOf do
21
+ let(:instance) { MelioPlatformApiClient::AccountAllOf.new }
22
+
23
+ describe 'test an instance of AccountAllOf' do
24
+ it 'should create an instance of AccountAllOf' do
25
+ expect(instance).to be_instance_of(MelioPlatformApiClient::AccountAllOf)
26
+ end
27
+ end
28
+ describe 'test attribute "company"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ describe 'test attribute "user"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
40
+ describe 'test attribute "status"' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
43
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["pending", "approved", "declined", "suspended"])
44
+ # validator.allowable_values.each do |value|
45
+ # expect { instance.status = value }.not_to raise_error
46
+ # end
47
+ end
48
+ end
49
+
50
+ end
@@ -0,0 +1,62 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for MelioPlatformApiClient::Account
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe MelioPlatformApiClient::Account do
21
+ let(:instance) { MelioPlatformApiClient::Account.new }
22
+
23
+ describe 'test an instance of Account' do
24
+ it 'should create an instance of Account' do
25
+ expect(instance).to be_instance_of(MelioPlatformApiClient::Account)
26
+ end
27
+ end
28
+ describe 'test attribute "id"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ describe 'test attribute "history"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
40
+ describe 'test attribute "company"' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
43
+ end
44
+ end
45
+
46
+ describe 'test attribute "user"' do
47
+ it 'should work' do
48
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
49
+ end
50
+ end
51
+
52
+ describe 'test attribute "status"' do
53
+ it 'should work' do
54
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
55
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["pending", "approved", "declined", "suspended"])
56
+ # validator.allowable_values.each do |value|
57
+ # expect { instance.status = value }.not_to raise_error
58
+ # end
59
+ end
60
+ end
61
+
62
+ end
@@ -0,0 +1,34 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethodBillerAccount
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethodBillerAccount do
21
+ let(:instance) { MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethodBillerAccount.new }
22
+
23
+ describe 'test an instance of AddToMyVendorParametersDeliveryMethodBillerAccount' do
24
+ it 'should create an instance of AddToMyVendorParametersDeliveryMethodBillerAccount' do
25
+ expect(instance).to be_instance_of(MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethodBillerAccount)
26
+ end
27
+ end
28
+ describe 'test attribute "account_identifier"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ end
@@ -0,0 +1,40 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethod
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethod do
21
+ let(:instance) { MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethod.new }
22
+
23
+ describe 'test an instance of AddToMyVendorParametersDeliveryMethod' do
24
+ it 'should create an instance of AddToMyVendorParametersDeliveryMethod' do
25
+ expect(instance).to be_instance_of(MelioPlatformApiClient::AddToMyVendorParametersDeliveryMethod)
26
+ end
27
+ end
28
+ describe 'test attribute "delivery_type"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ describe 'test attribute "biller_account"' do
35
+ it 'should work' do
36
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
37
+ end
38
+ end
39
+
40
+ end
@@ -0,0 +1,34 @@
1
+ =begin
2
+ #Platform API
3
+
4
+ #Melio Platform API enables partners to perform partner-related operations in Melio's system, for themselves, and on behalf of their system's users. ## Definitions & entities #### Partner Represents a party that has high-level access level and can manage Accounts and performing action on them. Partners authenticate using a Partner secret API key, and are permitted to perform only on Accounts that belong to them. #### Account Represents a business / company that is connected to the Partners system. Partners can have multiple Accounts. #### Delivery Method A payment destination that is used to receive funds. Accounts can have multiple Delivery Methods. #### Funding Source A payment source that is used to send funds. Accounts can have multiple Funding Sources. #### Vendor A business entity that can receive funds from an Account. Vendors are Account-specific. #### Payment Intent This main entity holds the general bill information (e.g. amount to pay, Vendor to pay to, due date, etc.), and acts as a utility / factory for creating Payments with selected configuration. #### Payment This core entity facilitates Melio's main use case of transferring funds *from* an Account's Delivery Method *to* a Vendor / Account's Delivery Method on a certain date, along with additional relevant information. #### Merchant Represents an Account's configuration as a seller, along with its additional data and options. #### Checkout Represents a checkout session that is performed by the buyer, along with the cart and additional required details. #### Charge Represnets a charging order for a Checkout, created when a Checkout is captured. #### FileInfo Wraps around a file in the platform - generic and can be uplaoded and associated with other objects per request. ## `Melio-Account` header The `Melio-Account` header is used when a Partner wants to perform an operation on behalf of one of its Accounts. It conains the Account'd ID which returned when creating the Account, or when retrieving all of the Partner's Accounts. Note that most operations are not permitted without the presence of this header.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: platform@melio.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.3.1
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for MelioPlatformApiClient::AddToMyVendorParameters
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe MelioPlatformApiClient::AddToMyVendorParameters do
21
+ let(:instance) { MelioPlatformApiClient::AddToMyVendorParameters.new }
22
+
23
+ describe 'test an instance of AddToMyVendorParameters' do
24
+ it 'should create an instance of AddToMyVendorParameters' do
25
+ expect(instance).to be_instance_of(MelioPlatformApiClient::AddToMyVendorParameters)
26
+ end
27
+ end
28
+ describe 'test attribute "delivery_method"' do
29
+ it 'should work' do
30
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
31
+ end
32
+ end
33
+
34
+ end