bleumi_pay_sdk_ruby 1.0.2 → 1.0.7
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 +4 -4
- data/Gemfile +1 -1
- data/README.md +67 -47
- data/bleumi_pay_sdk_ruby.gemspec +4 -5
- data/docs/AlgorandBalance.md +28 -0
- data/docs/AlgorandWalletAddress.md +24 -0
- data/docs/AlgorandWalletInputs.md +23 -0
- data/docs/BadRequest.md +2 -1
- data/docs/Chain.md +14 -0
- data/docs/CheckoutToken.md +28 -0
- data/docs/CreateCheckoutUrlRequest.md +28 -0
- data/docs/CreateCheckoutUrlResponse.md +17 -0
- data/docs/CreatePaymentRequest.md +19 -0
- data/docs/CreatePaymentResponse.md +15 -0
- data/docs/CreatePayoutRequest.md +28 -0
- data/docs/CreatePayoutResponse.md +15 -0
- data/docs/EthereumBalance.md +30 -0
- data/docs/EthereumWalletAddress.md +23 -0
- data/docs/EthereumWalletInputs.md +23 -0
- data/docs/HostedCheckoutsApi.md +197 -0
- data/docs/PaginatedPaymentOperations.md +28 -0
- data/docs/PaginatedPayments.md +95 -0
- data/docs/PaginatedPayoutItems.md +59 -0
- data/docs/Payment.md +67 -0
- data/docs/PaymentAddresses.md +21 -0
- data/docs/PaymentBalances.md +21 -0
- data/docs/PaymentOperation.md +46 -0
- data/docs/PaymentOperationInputs.md +31 -0
- data/docs/PaymentOperationResponse.md +15 -0
- data/docs/PaymentRefundRequest.md +14 -0
- data/docs/PaymentSettleRequest.md +17 -0
- data/docs/PaymentsApi.md +368 -0
- data/docs/Payout.md +18 -0
- data/docs/PayoutItem.md +39 -0
- data/docs/PayoutItemInputs.md +28 -0
- data/docs/PayoutsApi.md +137 -0
- data/docs/RskBalance.md +28 -0
- data/docs/ValidateCheckoutRequest.md +21 -0
- data/docs/ValidateCheckoutResponse.md +15 -0
- data/docs/WalletBalance.md +18 -4
- data/hc_create.rb +40 -0
- data/hc_list.rb +17 -0
- data/hc_validate.rb +22 -0
- data/lib/bleumi_pay_sdk_ruby.rb +38 -17
- data/lib/bleumi_pay_sdk_ruby/api/hosted_checkouts_api.rb +212 -0
- data/lib/bleumi_pay_sdk_ruby/api/payments_api.rb +517 -0
- data/lib/bleumi_pay_sdk_ruby/api/payouts_api.rb +157 -0
- data/lib/bleumi_pay_sdk_ruby/api/request_validator.rb +288 -0
- data/lib/bleumi_pay_sdk_ruby/api_client.rb +11 -9
- data/lib/bleumi_pay_sdk_ruby/api_error.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/configuration.rb +4 -4
- data/lib/bleumi_pay_sdk_ruby/models/algorand_balance.rb +219 -0
- data/lib/bleumi_pay_sdk_ruby/models/algorand_wallet_address.rb +221 -0
- data/lib/bleumi_pay_sdk_ruby/models/algorand_wallet_inputs.rb +247 -0
- data/lib/bleumi_pay_sdk_ruby/models/bad_request.rb +15 -5
- data/lib/bleumi_pay_sdk_ruby/models/{eth_network.rb → chain.rb} +12 -9
- data/lib/bleumi_pay_sdk_ruby/models/checkout_token.rb +302 -0
- data/lib/bleumi_pay_sdk_ruby/models/create_checkout_url_request.rb +312 -0
- data/lib/bleumi_pay_sdk_ruby/models/create_checkout_url_response.rb +227 -0
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_create_input.rb → create_payment_request.rb} +33 -11
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_create_output.rb → create_payment_response.rb} +19 -23
- data/lib/bleumi_pay_sdk_ruby/models/create_payout_request.rb +244 -0
- data/lib/bleumi_pay_sdk_ruby/models/create_payout_response.rb +212 -0
- data/lib/bleumi_pay_sdk_ruby/models/ethereum_balance.rb +241 -0
- data/lib/bleumi_pay_sdk_ruby/models/ethereum_wallet_address.rb +221 -0
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_inputs.rb → ethereum_wallet_inputs.rb} +35 -50
- data/lib/bleumi_pay_sdk_ruby/models/paginated_payment_operations.rb +224 -0
- data/lib/bleumi_pay_sdk_ruby/models/{paginated_wallet_operations.rb → paginated_payments.rb} +19 -9
- data/lib/bleumi_pay_sdk_ruby/models/{paginated_wallets.rb → paginated_payout_items.rb} +19 -9
- data/lib/bleumi_pay_sdk_ruby/models/{wallet.rb → payment.rb} +31 -54
- data/lib/bleumi_pay_sdk_ruby/models/payment_addresses.rb +231 -0
- data/lib/bleumi_pay_sdk_ruby/models/payment_balances.rb +225 -0
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_operation.rb → payment_operation.rb} +44 -18
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_operation_inputs.rb → payment_operation_inputs.rb} +38 -12
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_operation_output.rb → payment_operation_response.rb} +18 -8
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_refund_operation_input.rb → payment_refund_request.rb} +18 -8
- data/lib/bleumi_pay_sdk_ruby/models/{wallet_settle_operation_input.rb → payment_settle_request.rb} +18 -8
- data/lib/bleumi_pay_sdk_ruby/models/payout.rb +237 -0
- data/lib/bleumi_pay_sdk_ruby/models/payout_item.rb +286 -0
- data/lib/bleumi_pay_sdk_ruby/models/payout_item_inputs.rb +244 -0
- data/lib/bleumi_pay_sdk_ruby/models/rsk_balance.rb +219 -0
- data/lib/bleumi_pay_sdk_ruby/models/validate_checkout_request.rb +257 -0
- data/lib/bleumi_pay_sdk_ruby/models/validate_checkout_response.rb +212 -0
- data/lib/bleumi_pay_sdk_ruby/models/wallet_balance.rb +37 -12
- data/lib/bleumi_pay_sdk_ruby/version.rb +4 -4
- data/po_create.rb +39 -0
- data/po_list.rb +23 -0
- data/py_create.rb +48 -0
- data/py_get.rb +18 -0
- data/py_getop.rb +19 -0
- data/py_list.rb +24 -0
- data/py_listops.rb +21 -0
- data/py_refund.rb +43 -0
- data/py_settle.rb +43 -0
- data/spec/api/hosted_checkouts_api_spec.rb +67 -0
- data/spec/api/payments_api_spec.rb +123 -0
- data/spec/api/payouts_api_spec.rb +61 -0
- data/spec/api_client_spec.rb +226 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/algorand_balance_spec.rb +47 -0
- data/spec/models/algorand_wallet_address_spec.rb +47 -0
- data/spec/models/algorand_wallet_inputs_spec.rb +65 -0
- data/spec/models/bad_request_spec.rb +47 -0
- data/spec/models/chain_spec.rb +35 -0
- data/spec/models/checkout_token_spec.rb +77 -0
- data/spec/models/create_checkout_url_request_spec.rb +89 -0
- data/spec/models/create_checkout_url_response_spec.rb +47 -0
- data/spec/models/create_payment_request_spec.rb +59 -0
- data/spec/models/create_payment_response_spec.rb +41 -0
- data/spec/models/create_payout_request_spec.rb +53 -0
- data/spec/models/create_payout_response_spec.rb +41 -0
- data/spec/models/ethereum_balance_spec.rb +59 -0
- data/spec/models/ethereum_wallet_address_spec.rb +47 -0
- data/spec/models/ethereum_wallet_inputs_spec.rb +65 -0
- data/spec/models/paginated_payment_operations_spec.rb +47 -0
- data/spec/models/paginated_payments_spec.rb +47 -0
- data/spec/models/paginated_payout_items_spec.rb +47 -0
- data/spec/models/payment_addresses_spec.rb +53 -0
- data/spec/models/payment_balances_spec.rb +53 -0
- data/spec/models/payment_operation_inputs_spec.rb +65 -0
- data/spec/models/payment_operation_response_spec.rb +41 -0
- data/spec/models/payment_operation_spec.rb +71 -0
- data/spec/models/payment_refund_request_spec.rb +41 -0
- data/spec/models/payment_settle_request_spec.rb +47 -0
- data/spec/models/payment_spec.rb +65 -0
- data/spec/models/payout_item_inputs_spec.rb +53 -0
- data/spec/models/payout_item_spec.rb +71 -0
- data/spec/models/payout_spec.rb +53 -0
- data/spec/models/rsk_balance_spec.rb +47 -0
- data/spec/models/validate_checkout_request_spec.rb +59 -0
- data/spec/models/validate_checkout_response_spec.rb +41 -0
- data/spec/models/wallet_balance_spec.rb +65 -0
- data/spec/spec_helper.rb +111 -0
- metadata +180 -49
- data/docs/Erc20PaymentsApi.md +0 -334
- data/docs/EthAddress.md +0 -8
- data/docs/EthNetwork.md +0 -9
- data/docs/PaginatedWalletOperations.md +0 -8
- data/docs/PaginatedWallets.md +0 -8
- data/docs/Wallet.md +0 -13
- data/docs/WalletCreateInput.md +0 -9
- data/docs/WalletCreateOutput.md +0 -10
- data/docs/WalletInputs.md +0 -11
- data/docs/WalletOperation.md +0 -11
- data/docs/WalletOperationInputs.md +0 -10
- data/docs/WalletOperationOutput.md +0 -8
- data/docs/WalletRefundOperationInput.md +0 -7
- data/docs/WalletSettleOperationInput.md +0 -8
- data/lib/bleumi_pay_sdk_ruby/api/erc20_payments_api.rb +0 -482
- data/lib/bleumi_pay_sdk_ruby/models/eth_address.rb +0 -208
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Bleumi Pay API
|
|
3
|
+
|
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: info@bleumi.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 4.2.2
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
|
|
16
|
+
# Unit tests for BleumiPay::PaymentsApi
|
|
17
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
18
|
+
# Please update as you see appropriate
|
|
19
|
+
describe 'PaymentsApi' do
|
|
20
|
+
before do
|
|
21
|
+
# run before each test
|
|
22
|
+
@api_instance = BleumiPay::PaymentsApi.new
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
after do
|
|
26
|
+
# run after each test
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe 'test an instance of PaymentsApi' do
|
|
30
|
+
it 'should create an instance of PaymentsApi' do
|
|
31
|
+
expect(@api_instance).to be_instance_of(BleumiPay::PaymentsApi)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# unit tests for create_payment
|
|
36
|
+
# Generate a unique wallet address in the specified network to accept payment
|
|
37
|
+
# @param create_payment_request
|
|
38
|
+
# @param [Hash] opts the optional parameters
|
|
39
|
+
# @option opts [Chain] :chain Network in which payment is to be created. Please refer documentation for Supported Networks
|
|
40
|
+
# @return [CreatePaymentResponse]
|
|
41
|
+
describe 'create_payment 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 get_payment
|
|
48
|
+
# Retrieve the wallet addresses & token balances for a given payment
|
|
49
|
+
# @param id Unique identifier of the payment (specified during createPayment) to retrieve
|
|
50
|
+
# @param [Hash] opts the optional parameters
|
|
51
|
+
# @return [Payment]
|
|
52
|
+
describe 'get_payment test' do
|
|
53
|
+
it 'should work' do
|
|
54
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# unit tests for get_payment_operation
|
|
59
|
+
# Retrieve a payment operation for a specific payment.
|
|
60
|
+
# @param id Unique identifier of the payment (specified during [Create a Payment](#createPayment))
|
|
61
|
+
# @param txid ID of a specific operation of the payment
|
|
62
|
+
# @param [Hash] opts the optional parameters
|
|
63
|
+
# @return [PaymentOperation]
|
|
64
|
+
describe 'get_payment_operation 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 list_payment_operations
|
|
71
|
+
# Retrieve all payment operations for a specific payment.
|
|
72
|
+
# @param id Unique identifier of the payment (specified during [Create a Payment](#createPayment))
|
|
73
|
+
# @param [Hash] opts the optional parameters
|
|
74
|
+
# @option opts [String] :next_token Cursor to start results from
|
|
75
|
+
# @return [PaginatedPaymentOperations]
|
|
76
|
+
describe 'list_payment_operations test' do
|
|
77
|
+
it 'should work' do
|
|
78
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
# unit tests for list_payments
|
|
83
|
+
# Retrieve all payments created.
|
|
84
|
+
# @param [Hash] opts the optional parameters
|
|
85
|
+
# @option opts [String] :next_token Cursor to start results from
|
|
86
|
+
# @option opts [String] :sort_by Sort payments by
|
|
87
|
+
# @option opts [String] :sort_order Sort Order
|
|
88
|
+
# @option opts [String] :start_at Get payments from this timestamp (unix)
|
|
89
|
+
# @option opts [String] :end_at Get payments till this timestamp (unix)
|
|
90
|
+
# @return [PaginatedPayments]
|
|
91
|
+
describe 'list_payments test' do
|
|
92
|
+
it 'should work' do
|
|
93
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# unit tests for refund_payment
|
|
98
|
+
# Refund the balance of a token for a given payment to the buyerAddress
|
|
99
|
+
# @param id Unique identifier of the payment (specified during createPayment)
|
|
100
|
+
# @param payment_refund_request Request body - used to specify the token to refund.
|
|
101
|
+
# @param [Hash] opts the optional parameters
|
|
102
|
+
# @option opts [Chain] :chain Ethereum network in which payment is to be refunded.
|
|
103
|
+
# @return [PaymentOperationResponse]
|
|
104
|
+
describe 'refund_payment test' do
|
|
105
|
+
it 'should work' do
|
|
106
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# unit tests for settle_payment
|
|
111
|
+
# Settle a specific amount of a token for a given payment to the transferAddress and remaining balance (if any) will be refunded to the buyerAddress
|
|
112
|
+
# @param id Unique identifier of the payment (specified during createPayment)
|
|
113
|
+
# @param payment_settle_request Request body - used to specify the amount to settle.
|
|
114
|
+
# @param [Hash] opts the optional parameters
|
|
115
|
+
# @option opts [Chain] :chain Ethereum network in which payment is to be settled.
|
|
116
|
+
# @return [PaymentOperationResponse]
|
|
117
|
+
describe 'settle_payment test' do
|
|
118
|
+
it 'should work' do
|
|
119
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Bleumi Pay API
|
|
3
|
+
|
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: info@bleumi.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 4.2.2
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
|
|
16
|
+
# Unit tests for BleumiPay::PayoutsApi
|
|
17
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
18
|
+
# Please update as you see appropriate
|
|
19
|
+
describe 'PayoutsApi' do
|
|
20
|
+
before do
|
|
21
|
+
# run before each test
|
|
22
|
+
@api_instance = BleumiPay::PayoutsApi.new
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
after do
|
|
26
|
+
# run after each test
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe 'test an instance of PayoutsApi' do
|
|
30
|
+
it 'should create an instance of PayoutsApi' do
|
|
31
|
+
expect(@api_instance).to be_instance_of(BleumiPay::PayoutsApi)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# unit tests for create_payout
|
|
36
|
+
# Create a payout.
|
|
37
|
+
# @param create_payout_request Request body - used to specify payout creation parameters.
|
|
38
|
+
# @param [Hash] opts the optional parameters
|
|
39
|
+
# @option opts [Chain] :chain Ethereum network in which payment is to be created. Please refer documentation for Supported Networks
|
|
40
|
+
# @return [CreatePayoutResponse]
|
|
41
|
+
describe 'create_payout 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 list_payouts
|
|
48
|
+
# Returns a list of payouts
|
|
49
|
+
# @param [Hash] opts the optional parameters
|
|
50
|
+
# @option opts [String] :next_token Cursor to start results from
|
|
51
|
+
# @option opts [String] :sort_by Sort payments by
|
|
52
|
+
# @option opts [String] :start_at Get payouts from this timestamp (unix)
|
|
53
|
+
# @option opts [String] :end_at Get payouts till this timestamp (unix)
|
|
54
|
+
# @return [PaginatedPayoutItems]
|
|
55
|
+
describe 'list_payouts test' do
|
|
56
|
+
it 'should work' do
|
|
57
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
end
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Bleumi Pay API
|
|
3
|
+
|
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: info@bleumi.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 4.2.2
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
|
|
15
|
+
describe BleumiPay::ApiClient do
|
|
16
|
+
context 'initialization' do
|
|
17
|
+
context 'URL stuff' do
|
|
18
|
+
context 'host' do
|
|
19
|
+
it 'removes http from host' do
|
|
20
|
+
BleumiPay.configure { |c| c.host = 'http://example.com' }
|
|
21
|
+
expect(BleumiPay::Configuration.default.host).to eq('example.com')
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
it 'removes https from host' do
|
|
25
|
+
BleumiPay.configure { |c| c.host = 'https://wookiee.com' }
|
|
26
|
+
expect(BleumiPay::ApiClient.default.config.host).to eq('wookiee.com')
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it 'removes trailing path from host' do
|
|
30
|
+
BleumiPay.configure { |c| c.host = 'hobo.com/v4' }
|
|
31
|
+
expect(BleumiPay::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
|
+
BleumiPay.configure { |c| c.base_path = 'v4/dog' }
|
|
38
|
+
expect(BleumiPay::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
|
+
BleumiPay.configure { |c| c.base_path = '/v4/dog' }
|
|
43
|
+
expect(BleumiPay::Configuration.default.base_path).to eq('/v4/dog')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it "ends up as a blank string if nil" do
|
|
47
|
+
BleumiPay.configure { |c| c.base_path = nil }
|
|
48
|
+
expect(BleumiPay::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) { BleumiPay::Configuration.new }
|
|
56
|
+
let(:api_client) { BleumiPay::ApiClient.new(config) }
|
|
57
|
+
|
|
58
|
+
it 'defaults to nil' do
|
|
59
|
+
expect(BleumiPay::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) { BleumiPay::Configuration.new }
|
|
75
|
+
let(:api_client) { BleumiPay::ApiClient.new(config) }
|
|
76
|
+
|
|
77
|
+
it 'defaults to 0' do
|
|
78
|
+
expect(BleumiPay::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 = BleumiPay::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 = BleumiPay::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 = BleumiPay::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 = BleumiPay::ApiClient.new
|
|
125
|
+
# _model = BleumiPay::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) { BleumiPay::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) { BleumiPay::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) { BleumiPay::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) { BleumiPay::ApiClient.new }
|
|
198
|
+
|
|
199
|
+
it 'works' do
|
|
200
|
+
expect(api_client.select_header_content_type(nil)).to eq('application/json')
|
|
201
|
+
expect(api_client.select_header_content_type([])).to eq('application/json')
|
|
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) { BleumiPay::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
|
+
#Bleumi Pay API
|
|
3
|
+
|
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: info@bleumi.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 4.2.2
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
|
|
15
|
+
describe BleumiPay::Configuration do
|
|
16
|
+
let(:config) { BleumiPay::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.pay.bleumi.com")
|
|
22
|
+
# BleumiPay.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.pay.bleumi.com")
|
|
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.pay.bleumi.com")
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|