mangopay-v4 4.0.0 → 4.0.1
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 +5 -5
- data/.gitignore +29 -29
- data/.rspec +3 -3
- data/.rubocop.yml +1 -1
- data/.travis.yml +21 -13
- data/Gemfile +2 -2
- data/LICENSE +20 -20
- data/README.md +379 -379
- data/bin/mangopay +9 -9
- data/lib/mangopay.rb +132 -132
- data/lib/mangopay/api/api.rb +8 -8
- data/lib/mangopay/api/api_methods.rb +160 -136
- data/lib/mangopay/api/auth_token_manager.rb +173 -173
- data/lib/mangopay/api/http_client.rb +324 -324
- data/lib/mangopay/api/service/bank_accounts.rb +145 -145
- data/lib/mangopay/api/service/banking_aliases.rb +83 -0
- data/lib/mangopay/api/service/cards.rb +151 -151
- data/lib/mangopay/api/service/client_wallets.rb +88 -88
- data/lib/mangopay/api/service/clients.rb +67 -67
- data/lib/mangopay/api/service/dispute_documents.rb +157 -157
- data/lib/mangopay/api/service/disputes.rb +186 -186
- data/lib/mangopay/api/service/e_money.rb +63 -41
- data/lib/mangopay/api/service/events.rb +46 -46
- data/lib/mangopay/api/service/hooks.rb +92 -92
- data/lib/mangopay/api/service/kyc_documents.rb +152 -152
- data/lib/mangopay/api/service/mandates.rb +141 -141
- data/lib/mangopay/api/service/oauth_tokens.rb +24 -24
- data/lib/mangopay/api/service/pay_ins.rb +369 -259
- data/lib/mangopay/api/service/pay_outs.rb +53 -53
- data/lib/mangopay/api/service/pre_authorizations.rb +126 -68
- data/lib/mangopay/api/service/refunds.rb +159 -61
- data/lib/mangopay/api/service/reports.rb +150 -150
- data/lib/mangopay/api/service/repudiations.rb +31 -31
- data/lib/mangopay/api/service/responses.rb +101 -101
- data/lib/mangopay/api/service/settlement_transfers.rb +54 -54
- data/lib/mangopay/api/service/transactions.rb +246 -182
- data/lib/mangopay/api/service/transfers.rb +53 -53
- data/lib/mangopay/api/service/ubo_declarations.rb +94 -69
- data/lib/mangopay/api/service/users.rb +162 -162
- data/lib/mangopay/api/service/wallets.rb +98 -98
- data/lib/mangopay/api/uri_provider.rb +32 -34
- data/lib/mangopay/common/json_tag_converter.rb +70 -67
- data/lib/mangopay/common/jsonifier.rb +266 -248
- data/lib/mangopay/common/log_provider.rb +33 -33
- data/lib/mangopay/common/rate_limit_interval.rb +16 -16
- data/lib/mangopay/common/read_only_fields.rb +26 -26
- data/lib/mangopay/common/response_error.rb +61 -61
- data/lib/mangopay/common/sort_direction.rb +14 -14
- data/lib/mangopay/common/sort_field.rb +12 -12
- data/lib/mangopay/common/template_url_options.rb +8 -8
- data/lib/mangopay/configuration.rb +38 -38
- data/lib/mangopay/environment.rb +65 -65
- data/lib/mangopay/model/address.rb +26 -26
- data/lib/mangopay/model/billing.rb +13 -0
- data/lib/mangopay/model/birthplace.rb +15 -0
- data/lib/mangopay/model/declared_ubo.rb +20 -20
- data/lib/mangopay/model/dispute_reason.rb +14 -14
- data/lib/mangopay/model/document_page_consult.rb +14 -14
- data/lib/mangopay/model/e_money.rb +17 -17
- data/lib/mangopay/model/entity/account/bank_account.rb +25 -25
- data/lib/mangopay/model/entity/account/ca_bank_account.rb +26 -26
- data/lib/mangopay/model/entity/account/debited_bank_account.rb +31 -0
- data/lib/mangopay/model/entity/account/gb_bank_account.rb +20 -20
- data/lib/mangopay/model/entity/account/iban_bank_account.rb +20 -20
- data/lib/mangopay/model/entity/account/other_bank_account.rb +23 -23
- data/lib/mangopay/model/entity/account/us_bank_account.rb +23 -23
- data/lib/mangopay/model/entity/banking_alias.rb +27 -0
- data/lib/mangopay/model/entity/card.rb +44 -44
- data/lib/mangopay/model/entity/card_registration.rb +42 -42
- data/lib/mangopay/model/entity/client.rb +65 -62
- data/lib/mangopay/model/entity/client_wallet.rb +22 -22
- data/lib/mangopay/model/entity/dispute.rb +49 -49
- data/lib/mangopay/model/entity/dispute_document.rb +28 -28
- data/lib/mangopay/model/entity/entity_base.rb +17 -17
- data/lib/mangopay/model/entity/hook.rb +25 -25
- data/lib/mangopay/model/entity/kyc_document.rb +27 -27
- data/lib/mangopay/model/entity/mandate.rb +50 -50
- data/lib/mangopay/model/entity/pay_in/apple_pay_direct_pay_in.rb +26 -0
- data/lib/mangopay/model/entity/pay_in/bank_wire_direct_pay_in.rb +24 -21
- data/lib/mangopay/model/entity/pay_in/bank_wire_external_instruction_pay_in.rb +19 -0
- data/lib/mangopay/model/entity/pay_in/card_direct_pay_in.rb +41 -32
- data/lib/mangopay/model/entity/pay_in/card_pre_authorized_pay_in.rb +15 -12
- data/lib/mangopay/model/entity/pay_in/card_web_pay_in.rb +36 -39
- data/lib/mangopay/model/entity/pay_in/direct_debit_direct_pay_in.rb +25 -22
- data/lib/mangopay/model/entity/pay_in/direct_debit_web_pay_in.rb +37 -37
- data/lib/mangopay/model/entity/pay_in/google_pay_direct_pay_in.rb +28 -0
- data/lib/mangopay/model/entity/pay_in/pay_in.rb +18 -15
- data/lib/mangopay/model/entity/pay_in/paypal_web_pay_in.rb +15 -0
- data/lib/mangopay/model/entity/pay_out.rb +21 -21
- data/lib/mangopay/model/entity/pre_authorization.rb +74 -67
- data/lib/mangopay/model/entity/refund.rb +17 -17
- data/lib/mangopay/model/entity/report.rb +50 -50
- data/lib/mangopay/model/entity/repudiation.rb +17 -17
- data/lib/mangopay/model/entity/settlement_transfer.rb +16 -16
- data/lib/mangopay/model/entity/transaction.rb +51 -51
- data/lib/mangopay/model/entity/transfer.rb +12 -12
- data/lib/mangopay/model/entity/ubo.rb +30 -0
- data/lib/mangopay/model/entity/ubo_declaration.rb +29 -31
- data/lib/mangopay/model/entity/user/legal_user.rb +55 -52
- data/lib/mangopay/model/entity/user/natural_user.rb +49 -49
- data/lib/mangopay/model/entity/user/user.rb +17 -17
- data/lib/mangopay/model/entity/wallet.rb +27 -27
- data/lib/mangopay/model/enum/account_type.rb +23 -23
- data/lib/mangopay/model/enum/avs_result.rb +19 -0
- data/lib/mangopay/model/enum/banking_alias_type.rb +12 -0
- data/lib/mangopay/model/enum/business_type.rb +17 -0
- data/lib/mangopay/model/enum/card_status.rb +14 -14
- data/lib/mangopay/model/enum/card_type.rb +32 -32
- data/lib/mangopay/model/enum/card_validity.rb +18 -18
- data/lib/mangopay/model/enum/country_iso.rb +758 -758
- data/lib/mangopay/model/enum/culture_code.rb +43 -43
- data/lib/mangopay/model/enum/currency_iso.rb +551 -551
- data/lib/mangopay/model/enum/declared_ubo_refused_reason_type.rb +15 -15
- data/lib/mangopay/model/enum/declared_ubo_status.rb +17 -17
- data/lib/mangopay/model/enum/deposit_type.rb +14 -14
- data/lib/mangopay/model/enum/direct_debit_type.rb +12 -12
- data/lib/mangopay/model/enum/dispute_doc_refused_reason_type.rb +24 -24
- data/lib/mangopay/model/enum/dispute_document_type.rb +22 -22
- data/lib/mangopay/model/enum/dispute_reason_type.rb +32 -32
- data/lib/mangopay/model/enum/dispute_status.rb +20 -20
- data/lib/mangopay/model/enum/dispute_type.rb +14 -14
- data/lib/mangopay/model/enum/document_status.rb +20 -20
- data/lib/mangopay/model/enum/download_format.rb +10 -10
- data/lib/mangopay/model/enum/event_type.rb +76 -73
- data/lib/mangopay/model/enum/funds_type.rb +14 -14
- data/lib/mangopay/model/enum/hook_status.rb +12 -12
- data/lib/mangopay/model/enum/hook_validity.rb +14 -14
- data/lib/mangopay/model/enum/income_range.rb +20 -20
- data/lib/mangopay/model/enum/kyc_doc_refused_reason_type.rb +36 -36
- data/lib/mangopay/model/enum/kyc_document_type.rb +18 -18
- data/lib/mangopay/model/enum/kyc_level.rb +12 -12
- data/lib/mangopay/model/enum/legal_person_type.rb +14 -14
- data/lib/mangopay/model/enum/mandate_culture_code.rb +22 -22
- data/lib/mangopay/model/enum/mandate_execution_type.rb +10 -10
- data/lib/mangopay/model/enum/mandate_scheme.rb +12 -12
- data/lib/mangopay/model/enum/mandate_status.rb +23 -23
- data/lib/mangopay/model/enum/mandate_type.rb +10 -10
- data/lib/mangopay/model/enum/natural_user_capacity.rb +14 -14
- data/lib/mangopay/model/enum/pay_in_execution_type.rb +17 -17
- data/lib/mangopay/model/enum/pay_in_payment_type.rb +29 -20
- data/lib/mangopay/model/enum/pay_out_payment_type.rb +10 -10
- data/lib/mangopay/model/enum/payment_status.rb +20 -20
- data/lib/mangopay/model/enum/person_type.rb +14 -14
- data/lib/mangopay/model/enum/platform_type.rb +22 -22
- data/lib/mangopay/model/enum/pre_authorization_execution_type.rb +10 -10
- data/lib/mangopay/model/enum/pre_authorization_status.rb +17 -17
- data/lib/mangopay/model/enum/refund_reason_type.rb +20 -20
- data/lib/mangopay/model/enum/report_status.rb +16 -16
- data/lib/mangopay/model/enum/report_type.rb +12 -12
- data/lib/mangopay/model/enum/sector.rb +29 -0
- data/lib/mangopay/model/enum/secure_mode.rb +15 -15
- data/lib/mangopay/model/enum/transaction_nature.rb +16 -16
- data/lib/mangopay/model/enum/transaction_status.rb +14 -14
- data/lib/mangopay/model/enum/transaction_type.rb +14 -14
- data/lib/mangopay/model/enum/ubo_declaration_refused_reason_type.rb +18 -18
- data/lib/mangopay/model/enum/ubo_declaration_status.rb +20 -20
- data/lib/mangopay/model/event.rb +17 -17
- data/lib/mangopay/model/model.rb +214 -193
- data/lib/mangopay/model/money.rb +16 -16
- data/lib/mangopay/model/pay_in_web_extended_view.rb +30 -30
- data/lib/mangopay/model/platform_categorization.rb +15 -0
- data/lib/mangopay/model/refund_reason.rb +14 -14
- data/lib/mangopay/model/report_filter.rb +82 -82
- data/lib/mangopay/model/request/cancel_request.rb +15 -15
- data/lib/mangopay/model/request/complete_registration_request.rb +12 -12
- data/lib/mangopay/model/request/currency_request.rb +12 -12
- data/lib/mangopay/model/request/deactivation_request.rb +9 -9
- data/lib/mangopay/model/request/filter_request.rb +37 -37
- data/lib/mangopay/model/request/submit_document_request.rb +13 -13
- data/lib/mangopay/model/request/submit_ubo_declaration_request.rb +16 -13
- data/lib/mangopay/model/request/upload_file_request.rb +8 -8
- data/lib/mangopay/model/response_replica.rb +26 -26
- data/lib/mangopay/model/security_info.rb +13 -0
- data/lib/mangopay/util/custom_formatter.rb +11 -11
- data/lib/mangopay/util/custom_logger.rb +33 -33
- data/lib/mangopay/util/enum.rb +51 -51
- data/lib/mangopay/util/file_encoder.rb +15 -15
- data/lib/mangopay/util/non_instantiable.rb +5 -5
- data/lib/mangopay/util/storage_strategy.rb +9 -9
- data/lib/mangopay/util/void_logger.rb +5 -5
- data/mangopay-v4.gemspec +32 -0
- data/mangopay.gemspec +32 -32
- data/spec/context/address_context.rb +24 -24
- data/spec/context/bank_account_context.rb +137 -137
- data/spec/context/banking_alias_context.rb +17 -0
- data/spec/context/birthplace_context.rb +17 -0
- data/spec/context/card_context.rb +45 -45
- data/spec/context/client_context.rb +43 -44
- data/spec/context/dispute_context.rb +36 -36
- data/spec/context/dispute_document_context.rb +19 -19
- data/spec/context/hook_context.rb +15 -15
- data/spec/context/kyc_document_context.rb +22 -22
- data/spec/context/mandate_context.rb +26 -26
- data/spec/context/pay_in_context.rb +319 -224
- data/spec/context/pay_out_context.rb +39 -38
- data/spec/context/pre_authorization_context.rb +44 -40
- data/spec/context/refund_context.rb +32 -32
- data/spec/context/report_context.rb +21 -21
- data/spec/context/repudiation_context.rb +18 -18
- data/spec/context/settlement_transfer_context.rb +27 -27
- data/spec/context/transfer_context.rb +50 -50
- data/spec/context/ubo_declaration_context.rb +29 -24
- data/spec/context/user_context.rb +83 -82
- data/spec/context/wallet_context.rb +52 -52
- data/spec/mangopay/bank_accounts_spec.rb +228 -228
- data/spec/mangopay/banking_alias_spec.rb +85 -0
- data/spec/mangopay/cards_spec.rb +133 -134
- data/spec/mangopay/client_wallets_spec.rb +147 -147
- data/spec/mangopay/clients_spec.rb +56 -54
- data/spec/mangopay/configuration_spec.rb +125 -125
- data/spec/mangopay/dispute_documents_spec.rb +173 -173
- data/spec/mangopay/disputes_spec.rb +264 -264
- data/spec/mangopay/e_money_spec.rb +57 -37
- data/spec/mangopay/events_spec.rb +49 -49
- data/spec/mangopay/hooks_spec.rb +70 -70
- data/spec/mangopay/kyc_documents_spec.rb +179 -179
- data/spec/mangopay/mandates_spec.rb +218 -218
- data/spec/mangopay/oauth_tokens_spec.rb +40 -40
- data/spec/mangopay/pay_ins_spec.rb +279 -180
- data/spec/mangopay/pay_outs_spec.rb +38 -38
- data/spec/mangopay/pre_authorizations_spec.rb +134 -57
- data/spec/mangopay/refunds_spec.rb +187 -39
- data/spec/mangopay/reports_spec.rb +118 -120
- data/spec/mangopay/responses_spec.rb +324 -294
- data/spec/mangopay/settlement_transfers_spec.rb +36 -36
- data/spec/mangopay/transactions_spec.rb +347 -232
- data/spec/mangopay/transfers_spec.rb +37 -37
- data/spec/mangopay/ubo_declarations_spec.rb +127 -64
- data/spec/mangopay/users_spec.rb +145 -145
- data/spec/mangopay/wallets_spec.rb +103 -103
- data/spec/spec_helper.rb +72 -72
- data/spec/tmp/MangoPay.AuthorizationToken.FileStore.tmp +6 -0
- data/spec/tmp/mangopay.log.tmp +1201 -0
- metadata +31 -5
@@ -1,37 +1,37 @@
|
|
1
|
-
require_relative '../../lib/mangopay/api/service/settlement_transfers'
|
2
|
-
require_relative '../context/settlement_transfer_context'
|
3
|
-
|
4
|
-
describe MangoApi::SettlementTransfers do
|
5
|
-
include_context 'settlement_transfer_context'
|
6
|
-
|
7
|
-
describe '.create' do
|
8
|
-
|
9
|
-
context 'given a valid object' do
|
10
|
-
id = REPUDIATION_PERSISTED.id
|
11
|
-
transfer = SETTLEMENT_TRANSFER_DATA
|
12
|
-
|
13
|
-
it 'creates the settlement transfer entity' do
|
14
|
-
created = MangoApi::SettlementTransfers.create(id, transfer)
|
15
|
-
|
16
|
-
expect(created).to be_kind_of MangoModel::SettlementTransfer
|
17
|
-
expect(created.id).not_to be_nil
|
18
|
-
expect(created.repudiation_id).to eq id
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
describe '.get' do
|
24
|
-
|
25
|
-
context "given an existing entity's ID" do
|
26
|
-
transfer = SETTLEMENT_TRANSFER_PERSISTED
|
27
|
-
id = transfer.id
|
28
|
-
|
29
|
-
it 'retrieves the corresponding entity' do
|
30
|
-
retrieved = MangoApi::SettlementTransfers.get id
|
31
|
-
|
32
|
-
expect(retrieved).to be_kind_of MangoModel::SettlementTransfer
|
33
|
-
expect(retrieved.id).to eq id
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
1
|
+
require_relative '../../lib/mangopay/api/service/settlement_transfers'
|
2
|
+
require_relative '../context/settlement_transfer_context'
|
3
|
+
|
4
|
+
describe MangoApi::SettlementTransfers do
|
5
|
+
include_context 'settlement_transfer_context'
|
6
|
+
|
7
|
+
describe '.create' do
|
8
|
+
|
9
|
+
context 'given a valid object' do
|
10
|
+
id = REPUDIATION_PERSISTED.id
|
11
|
+
transfer = SETTLEMENT_TRANSFER_DATA
|
12
|
+
|
13
|
+
it 'creates the settlement transfer entity' do
|
14
|
+
created = MangoApi::SettlementTransfers.create(id, transfer)
|
15
|
+
|
16
|
+
expect(created).to be_kind_of MangoModel::SettlementTransfer
|
17
|
+
expect(created.id).not_to be_nil
|
18
|
+
expect(created.repudiation_id).to eq id
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
describe '.get' do
|
24
|
+
|
25
|
+
context "given an existing entity's ID" do
|
26
|
+
transfer = SETTLEMENT_TRANSFER_PERSISTED
|
27
|
+
id = transfer.id
|
28
|
+
|
29
|
+
it 'retrieves the corresponding entity' do
|
30
|
+
retrieved = MangoApi::SettlementTransfers.get id
|
31
|
+
|
32
|
+
expect(retrieved).to be_kind_of MangoModel::SettlementTransfer
|
33
|
+
expect(retrieved.id).to eq id
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
37
|
end
|
@@ -1,233 +1,348 @@
|
|
1
|
-
require_relative '../../lib/mangopay/api/service/transactions'
|
2
|
-
require_relative '../../lib/mangopay/api/service/clients'
|
3
|
-
require_relative '../context/dispute_context'
|
4
|
-
require_relative '../context/pre_authorization_context'
|
5
|
-
require_relative '
|
6
|
-
require_relative '
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
1
|
+
require_relative '../../lib/mangopay/api/service/transactions'
|
2
|
+
require_relative '../../lib/mangopay/api/service/clients'
|
3
|
+
require_relative '../context/dispute_context'
|
4
|
+
require_relative '../context/pre_authorization_context'
|
5
|
+
require_relative '../context/mandate_context'
|
6
|
+
require_relative '../context/bank_account_context'
|
7
|
+
require_relative '../../lib/mangopay/common/sort_field'
|
8
|
+
require_relative '../../lib/mangopay/common/sort_direction'
|
9
|
+
|
10
|
+
describe MangoApi::Transactions do
|
11
|
+
include_context 'dispute_context'
|
12
|
+
include_context 'pre_authorization_context'
|
13
|
+
include_context 'bank_account_context'
|
14
|
+
include_context 'mandate_context'
|
15
|
+
|
16
|
+
describe '.of_user' do
|
17
|
+
|
18
|
+
context "given an existing user entity's id" do
|
19
|
+
id = NATURAL_USER_PERSISTED.id
|
20
|
+
|
21
|
+
context 'not having specified filters' do
|
22
|
+
results = MangoApi::Transactions.of_user id
|
23
|
+
|
24
|
+
it 'retrieves list with default parameters' do
|
25
|
+
expect(results).to be_kind_of Array
|
26
|
+
results.each do |result|
|
27
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
28
|
+
expect(result.id).not_to be_nil
|
29
|
+
expect(result.author_id).to eq id
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
context 'having specified filters' do
|
35
|
+
results = MangoApi::Transactions.of_user id do |filter|
|
36
|
+
filter.page = 1
|
37
|
+
filter.per_page = 3
|
38
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
39
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'retrieves list with specified parameters' do
|
43
|
+
expect(results).to be_kind_of Array
|
44
|
+
results.each do |result|
|
45
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
46
|
+
expect(result.id).not_to be_nil
|
47
|
+
expect(result.author_id).to eq id
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
describe '.of_wallet' do
|
55
|
+
|
56
|
+
describe "given an existing wallet entity's id" do
|
57
|
+
id = WALLET_PERSISTED.id
|
58
|
+
|
59
|
+
context 'not having specified filters' do
|
60
|
+
results = MangoApi::Transactions.of_wallet id
|
61
|
+
|
62
|
+
it 'retrieves list with default parameters' do
|
63
|
+
expect(results).to be_kind_of Array
|
64
|
+
results.each do |result|
|
65
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
66
|
+
expect(result.id).not_to be_nil
|
67
|
+
expect(result.credited_wallet_id == id \
|
68
|
+
|| result.debited_wallet_id == id).to be_truthy
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
context 'having specified filters' do
|
74
|
+
results = MangoApi::Transactions.of_wallet id do |filter|
|
75
|
+
filter.page = 1
|
76
|
+
filter.per_page = 3
|
77
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
78
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
79
|
+
end
|
80
|
+
|
81
|
+
it 'retrieves list with specified parameters' do
|
82
|
+
expect(results).to be_kind_of Array
|
83
|
+
results.each do |result|
|
84
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
85
|
+
expect(result.id).not_to be_nil
|
86
|
+
expect(result.credited_wallet_id == id \
|
87
|
+
|| result.debited_wallet_id == id).to be_truthy
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
describe '.of_dispute' do
|
95
|
+
|
96
|
+
describe "given an existing dispute entity's id" do
|
97
|
+
id = DISPUTE_PERSISTED.id
|
98
|
+
|
99
|
+
context 'not having specified filters' do
|
100
|
+
results = MangoApi::Transactions.of_dispute id
|
101
|
+
|
102
|
+
it 'retrieves list with default parameters' do
|
103
|
+
expect(results).to be_kind_of Array
|
104
|
+
results.each do |result|
|
105
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
106
|
+
expect(result.id).not_to be_nil
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
context 'having specified filters' do
|
112
|
+
results = MangoApi::Transactions.of_dispute id do |filter|
|
113
|
+
filter.page = 1
|
114
|
+
filter.per_page = 3
|
115
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
116
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
117
|
+
end
|
118
|
+
|
119
|
+
it 'retrieves list with specified parameters' do
|
120
|
+
expect(results).to be_kind_of Array
|
121
|
+
results.each do |result|
|
122
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
123
|
+
expect(result.id).not_to be_nil
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
describe '.of_client' do
|
131
|
+
|
132
|
+
describe 'from a correctly-configured environment' do
|
133
|
+
context 'not having specified filters' do
|
134
|
+
results = MangoApi::Transactions.of_client
|
135
|
+
|
136
|
+
it 'retrieves list with default parameters' do
|
137
|
+
expect(results).to be_kind_of Array
|
138
|
+
results.each do |result|
|
139
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
140
|
+
expect(result.id).not_to be_nil
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
144
|
+
|
145
|
+
context 'having specified filters' do
|
146
|
+
results = MangoApi::Transactions.of_client do |filter|
|
147
|
+
filter.page = 1
|
148
|
+
filter.per_page = 3
|
149
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
150
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
151
|
+
end
|
152
|
+
|
153
|
+
it 'retrieves list with specified parameters' do
|
154
|
+
expect(results).to be_kind_of Array
|
155
|
+
results.each do |result|
|
156
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
157
|
+
expect(result.id).not_to be_nil
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
describe '.of_client_wallet' do
|
165
|
+
|
166
|
+
describe 'from a correctly-configured environment' do
|
167
|
+
context 'not having specified filters' do
|
168
|
+
results = MangoApi::Transactions
|
169
|
+
.of_client_wallet MangoModel::FundsType::FEES,
|
170
|
+
MangoModel::CurrencyIso::EUR
|
171
|
+
|
172
|
+
it 'retrieves list with default parameters' do
|
173
|
+
expect(results).to be_kind_of Array
|
174
|
+
results.each do |result|
|
175
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
176
|
+
expect(result.id).not_to be_nil
|
177
|
+
end
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
181
|
+
context 'having specified filters' do
|
182
|
+
results = MangoApi::Transactions
|
183
|
+
.of_client_wallet(MangoModel::FundsType::CREDIT,
|
184
|
+
MangoModel::CurrencyIso::EUR) do |filter|
|
185
|
+
filter.page = 1
|
186
|
+
filter.per_page = 3
|
187
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
188
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
189
|
+
end
|
190
|
+
|
191
|
+
it 'retrieves list with specified parameters' do
|
192
|
+
expect(results).to be_kind_of Array
|
193
|
+
results.each do |result|
|
194
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
195
|
+
expect(result.id).not_to be_nil
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
end
|
200
|
+
end
|
201
|
+
|
202
|
+
describe '.of_pre_authorization' do
|
203
|
+
|
204
|
+
describe "given a valid pre-authorization entity's ID" do
|
205
|
+
id = PRE_AUTHORIZATION_PERSISTED.id
|
206
|
+
|
207
|
+
context 'not having specified filters' do
|
208
|
+
results = MangoApi::Transactions.of_pre_authorization id
|
209
|
+
|
210
|
+
it 'retrieves list with default parameters' do
|
211
|
+
expect(results).to be_kind_of Array
|
212
|
+
results.each do |result|
|
213
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
214
|
+
expect(result.id).not_to be_nil
|
215
|
+
end
|
216
|
+
end
|
217
|
+
end
|
218
|
+
|
219
|
+
context 'having specified filters' do
|
220
|
+
results = MangoApi::Transactions.of_pre_authorization id do |filter|
|
221
|
+
filter.page = 1
|
222
|
+
filter.per_page = 3
|
223
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
224
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
225
|
+
end
|
226
|
+
|
227
|
+
it 'retrieves list with specified parameters' do
|
228
|
+
expect(results).to be_kind_of Array
|
229
|
+
results.each do |result|
|
230
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
231
|
+
expect(result.id).not_to be_nil
|
232
|
+
end
|
233
|
+
end
|
234
|
+
end
|
235
|
+
end
|
236
|
+
end
|
237
|
+
|
238
|
+
describe '.of_card' do
|
239
|
+
|
240
|
+
describe "given a valid card entity's ID" do
|
241
|
+
id = CARD.id
|
242
|
+
|
243
|
+
context 'not having specified filters' do
|
244
|
+
results = MangoApi::Transactions.of_card id
|
245
|
+
|
246
|
+
it 'retrieves list with default parameters' do
|
247
|
+
expect(results).to be_kind_of Array
|
248
|
+
results.each do |result|
|
249
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
250
|
+
expect(result.id).not_to be_nil
|
251
|
+
end
|
252
|
+
end
|
253
|
+
end
|
254
|
+
|
255
|
+
context 'having specified filters' do
|
256
|
+
results = MangoApi::Transactions.of_card id do |filter|
|
257
|
+
|
258
|
+
filter.page = 1
|
259
|
+
filter.per_page = 3
|
260
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
261
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
262
|
+
end
|
263
|
+
|
264
|
+
it 'retrieves list with specified parameters' do
|
265
|
+
expect(results).to be_kind_of Array
|
266
|
+
results.each do |result|
|
267
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
268
|
+
expect(result.id).not_to be_nil
|
269
|
+
end
|
270
|
+
end
|
271
|
+
end
|
272
|
+
end
|
273
|
+
end
|
274
|
+
|
275
|
+
describe '.of_mandate' do
|
276
|
+
|
277
|
+
describe "given a valid mandate entity's ID" do
|
278
|
+
id = MANDATE_PERSISTED.id
|
279
|
+
|
280
|
+
context 'not having specified filters' do
|
281
|
+
results = MangoApi::Transactions.of_mandate id
|
282
|
+
|
283
|
+
it 'retrieves list with default parameters' do
|
284
|
+
expect(results).to be_kind_of Array
|
285
|
+
results.each do |result|
|
286
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
287
|
+
expect(result.id).not_to be_nil
|
288
|
+
end
|
289
|
+
end
|
290
|
+
end
|
291
|
+
|
292
|
+
context 'having specified filters' do
|
293
|
+
results = MangoApi::Transactions.of_mandate id do |filter|
|
294
|
+
filter.page = 1
|
295
|
+
filter.per_page = 3
|
296
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
297
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
298
|
+
end
|
299
|
+
|
300
|
+
it 'retrieves list with specified parameters' do
|
301
|
+
expect(results).to be_kind_of Array
|
302
|
+
results.each do |result|
|
303
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
304
|
+
expect(result.id).not_to be_nil
|
305
|
+
end
|
306
|
+
end
|
307
|
+
end
|
308
|
+
end
|
309
|
+
end
|
310
|
+
|
311
|
+
describe '.of_bank_account' do
|
312
|
+
|
313
|
+
describe "given a valid bank account entity's ID" do
|
314
|
+
id = IBAN_ACCOUNT_PERSISTED.id
|
315
|
+
|
316
|
+
context 'not having specified filters' do
|
317
|
+
results = MangoApi::Transactions.of_bank_account id
|
318
|
+
|
319
|
+
it 'retrieves list with default parameters' do
|
320
|
+
expect(results).to be_kind_of Array
|
321
|
+
results.each do |result|
|
322
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
323
|
+
expect(result.id).not_to be_nil
|
324
|
+
end
|
325
|
+
end
|
326
|
+
end
|
327
|
+
|
328
|
+
context 'having specified filters' do
|
329
|
+
results = MangoApi::Transactions.of_bank_account id do |filter|
|
330
|
+
filter.page = 1
|
331
|
+
filter.per_page = 3
|
332
|
+
filter.sort_field = MangoPay::SortField::CREATION_DATE
|
333
|
+
filter.sort_direction = MangoPay::SortDirection::ASC
|
334
|
+
filter.status = MangoModel::TransactionStatus::CREATED
|
335
|
+
end
|
336
|
+
|
337
|
+
it 'retrieves list with specified parameters' do
|
338
|
+
expect(results).to be_kind_of Array
|
339
|
+
results.each do |result|
|
340
|
+
expect(result).to be_kind_of MangoModel::Transaction
|
341
|
+
expect(result.id).not_to be_nil
|
342
|
+
expect(result.status).to be MangoModel::TransactionStatus::CREATED
|
343
|
+
end
|
344
|
+
end
|
345
|
+
end
|
346
|
+
end
|
347
|
+
end
|
233
348
|
end
|