mangopay4-ruby-sdk 3.47.0 → 4.1.0

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.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +96 -0
  3. data/lib/mangopay/acquiring.rb +4 -0
  4. data/lib/mangopay/authorization_token.rb +1 -1
  5. data/lib/mangopay/deposit.rb +7 -0
  6. data/lib/mangopay/extended_preauthorization.rb +32 -0
  7. data/lib/mangopay/http_calls.rb +1 -1
  8. data/lib/mangopay/identity_verification.rb +6 -0
  9. data/lib/mangopay/legal_user.rb +3 -0
  10. data/lib/mangopay/natural_user.rb +3 -0
  11. data/lib/mangopay/pay_in.rb +72 -16
  12. data/lib/mangopay/report_v2.rb +2 -2
  13. data/lib/mangopay/version.rb +1 -1
  14. data/lib/mangopay.rb +3 -2
  15. data/mangopay.gemspec +7 -7
  16. metadata +33 -162
  17. data/.github/workflows/ruby_cd.yml +0 -34
  18. data/.github/workflows/ruby_ci.yml +0 -30
  19. data/.gitignore +0 -30
  20. data/.rspec +0 -3
  21. data/Gemfile +0 -2
  22. data/Rakefile +0 -5
  23. data/bin/mangopay +0 -9
  24. data/spec/mangopay/acquiring_spec.rb +0 -202
  25. data/spec/mangopay/authorization_token_spec.rb +0 -70
  26. data/spec/mangopay/bank_account_spec.rb +0 -105
  27. data/spec/mangopay/bankingaliases_spec.rb +0 -29
  28. data/spec/mangopay/card_registration_spec.rb +0 -123
  29. data/spec/mangopay/client_spec.png +0 -0
  30. data/spec/mangopay/client_spec.rb +0 -213
  31. data/spec/mangopay/configuration_spec.rb +0 -249
  32. data/spec/mangopay/conversion_spec.rb +0 -103
  33. data/spec/mangopay/deposit_spec.rb +0 -107
  34. data/spec/mangopay/dispute_spec.png +0 -0
  35. data/spec/mangopay/dispute_spec.rb +0 -294
  36. data/spec/mangopay/event_spec.rb +0 -33
  37. data/spec/mangopay/fetch_filters_spec.rb +0 -63
  38. data/spec/mangopay/hook_spec.rb +0 -37
  39. data/spec/mangopay/idempotency_spec.rb +0 -41
  40. data/spec/mangopay/identity_verification_spec.rb +0 -47
  41. data/spec/mangopay/kyc_document_spec.png +0 -0
  42. data/spec/mangopay/kyc_document_spec.rb +0 -118
  43. data/spec/mangopay/log_requests_filter_spec.rb +0 -26
  44. data/spec/mangopay/mandate_spec.rb +0 -99
  45. data/spec/mangopay/payin_applepay_direct_spec.rb +0 -21
  46. data/spec/mangopay/payin_bancontact_web_spec.rb +0 -30
  47. data/spec/mangopay/payin_bankwire_direct_spec.rb +0 -74
  48. data/spec/mangopay/payin_bankwire_external_instruction_spec.rb +0 -104
  49. data/spec/mangopay/payin_bizum_web_spec.rb +0 -54
  50. data/spec/mangopay/payin_blik_web_spec.rb +0 -41
  51. data/spec/mangopay/payin_card_direct_spec.rb +0 -69
  52. data/spec/mangopay/payin_card_web_spec.rb +0 -64
  53. data/spec/mangopay/payin_directdebit_direct_spec.rb +0 -37
  54. data/spec/mangopay/payin_directdebit_web_spec.rb +0 -38
  55. data/spec/mangopay/payin_giropay_web_spec.rb +0 -30
  56. data/spec/mangopay/payin_googlepay_direct_spec.rb +0 -21
  57. data/spec/mangopay/payin_ideal_web_spec.rb +0 -30
  58. data/spec/mangopay/payin_intent_spec.rb +0 -295
  59. data/spec/mangopay/payin_klarna_web_spec.rb +0 -32
  60. data/spec/mangopay/payin_mbway_web_spec.rb +0 -32
  61. data/spec/mangopay/payin_multibanco_web_spec.rb +0 -31
  62. data/spec/mangopay/payin_paybybank_web_spec.rb +0 -56
  63. data/spec/mangopay/payin_payconiq_web_spec.rb +0 -32
  64. data/spec/mangopay/payin_paypal_web_spec.rb +0 -113
  65. data/spec/mangopay/payin_preauthorized_direct_spec.rb +0 -118
  66. data/spec/mangopay/payin_satispay_web_spec.rb +0 -32
  67. data/spec/mangopay/payin_swish_web_spec.rb +0 -30
  68. data/spec/mangopay/payin_twint_web_spec.rb +0 -30
  69. data/spec/mangopay/payment_method_metadata_spec.rb +0 -15
  70. data/spec/mangopay/payout_bankwire_spec.rb +0 -93
  71. data/spec/mangopay/preauthorization_spec.rb +0 -51
  72. data/spec/mangopay/recipient_spec.rb +0 -134
  73. data/spec/mangopay/recurring_payin_spec.rb +0 -222
  74. data/spec/mangopay/refund_spec.rb +0 -34
  75. data/spec/mangopay/regulatory_spec.rb +0 -26
  76. data/spec/mangopay/report_spec.rb +0 -40
  77. data/spec/mangopay/report_v2_spec.rb +0 -117
  78. data/spec/mangopay/report_wallets_spec.rb +0 -40
  79. data/spec/mangopay/settlement_sample.csv +0 -8
  80. data/spec/mangopay/settlement_sample_bad.csv +0 -8
  81. data/spec/mangopay/settlement_spec.rb +0 -65
  82. data/spec/mangopay/shared_resources.rb +0 -1399
  83. data/spec/mangopay/transaction_spec.rb +0 -59
  84. data/spec/mangopay/transfer_spec.rb +0 -77
  85. data/spec/mangopay/ubo_declaration_spec.rb +0 -44
  86. data/spec/mangopay/ubo_spec.rb +0 -39
  87. data/spec/mangopay/user_spec.rb +0 -455
  88. data/spec/mangopay/virtual_account_spec.rb +0 -52
  89. data/spec/mangopay/wallet_spec.rb +0 -100
  90. data/spec/spec_helper.rb +0 -31
  91. data/spec/tmp/.keep +0 -0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mangopay4-ruby-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.47.0
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Geoffroy Lorieux
@@ -9,70 +9,76 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2026-03-23 00:00:00.000000000 Z
12
+ date: 2026-10-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: multi_json
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 1.15.0
20
+ version: '1.21'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 1.15.0
27
+ version: '1.21'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: 13.2.1
34
+ version: 13.4.2
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: 13.2.1
41
+ version: 13.4.2
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: rspec
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - ">="
46
+ - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: 3.13.0
48
+ version: 3.13.2
49
49
  type: :development
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - ">="
53
+ - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: 3.13.0
55
+ version: 3.13.2
56
+ - !ruby/object:Gem::Dependency
57
+ name: simplecov
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: 0.22.0
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: 0.22.0
56
70
  description: |2
57
71
  The mangopay Gem makes interacting with MANGOPAY Services much easier.
58
72
  For any questions regarding the use of MANGOPAY's Services feel free to contact us at http://www.mangopay.com/get-started-2/
59
73
  You can find more documentation about MANGOPAY Services at http://docs.mangopay.com/
60
74
  email: support@mangopay.com
61
- executables:
62
- - mangopay
75
+ executables: []
63
76
  extensions: []
64
77
  extra_rdoc_files: []
65
78
  files:
66
- - ".github/workflows/ruby_cd.yml"
67
- - ".github/workflows/ruby_ci.yml"
68
- - ".gitignore"
69
- - ".rspec"
70
79
  - CHANGELOG.md
71
- - Gemfile
72
80
  - LICENSE
73
81
  - README.md
74
- - Rakefile
75
- - bin/mangopay
76
82
  - lib/generators/mangopay/install_generator.rb
77
83
  - lib/generators/templates/mangopay.rb.erb
78
84
  - lib/mangopay.rb
@@ -89,6 +95,7 @@ files:
89
95
  - lib/mangopay/dispute.rb
90
96
  - lib/mangopay/errors.rb
91
97
  - lib/mangopay/event.rb
98
+ - lib/mangopay/extended_preauthorization.rb
92
99
  - lib/mangopay/filter_parameters.rb
93
100
  - lib/mangopay/hook.rb
94
101
  - lib/mangopay/http_calls.rb
@@ -120,74 +127,6 @@ files:
120
127
  - lib/mangopay/virtual_account.rb
121
128
  - lib/mangopay/wallet.rb
122
129
  - mangopay.gemspec
123
- - spec/mangopay/acquiring_spec.rb
124
- - spec/mangopay/authorization_token_spec.rb
125
- - spec/mangopay/bank_account_spec.rb
126
- - spec/mangopay/bankingaliases_spec.rb
127
- - spec/mangopay/card_registration_spec.rb
128
- - spec/mangopay/client_spec.png
129
- - spec/mangopay/client_spec.rb
130
- - spec/mangopay/configuration_spec.rb
131
- - spec/mangopay/conversion_spec.rb
132
- - spec/mangopay/deposit_spec.rb
133
- - spec/mangopay/dispute_spec.png
134
- - spec/mangopay/dispute_spec.rb
135
- - spec/mangopay/event_spec.rb
136
- - spec/mangopay/fetch_filters_spec.rb
137
- - spec/mangopay/hook_spec.rb
138
- - spec/mangopay/idempotency_spec.rb
139
- - spec/mangopay/identity_verification_spec.rb
140
- - spec/mangopay/kyc_document_spec.png
141
- - spec/mangopay/kyc_document_spec.rb
142
- - spec/mangopay/log_requests_filter_spec.rb
143
- - spec/mangopay/mandate_spec.rb
144
- - spec/mangopay/payin_applepay_direct_spec.rb
145
- - spec/mangopay/payin_bancontact_web_spec.rb
146
- - spec/mangopay/payin_bankwire_direct_spec.rb
147
- - spec/mangopay/payin_bankwire_external_instruction_spec.rb
148
- - spec/mangopay/payin_bizum_web_spec.rb
149
- - spec/mangopay/payin_blik_web_spec.rb
150
- - spec/mangopay/payin_card_direct_spec.rb
151
- - spec/mangopay/payin_card_web_spec.rb
152
- - spec/mangopay/payin_directdebit_direct_spec.rb
153
- - spec/mangopay/payin_directdebit_web_spec.rb
154
- - spec/mangopay/payin_giropay_web_spec.rb
155
- - spec/mangopay/payin_googlepay_direct_spec.rb
156
- - spec/mangopay/payin_ideal_web_spec.rb
157
- - spec/mangopay/payin_intent_spec.rb
158
- - spec/mangopay/payin_klarna_web_spec.rb
159
- - spec/mangopay/payin_mbway_web_spec.rb
160
- - spec/mangopay/payin_multibanco_web_spec.rb
161
- - spec/mangopay/payin_paybybank_web_spec.rb
162
- - spec/mangopay/payin_payconiq_web_spec.rb
163
- - spec/mangopay/payin_paypal_web_spec.rb
164
- - spec/mangopay/payin_preauthorized_direct_spec.rb
165
- - spec/mangopay/payin_satispay_web_spec.rb
166
- - spec/mangopay/payin_swish_web_spec.rb
167
- - spec/mangopay/payin_twint_web_spec.rb
168
- - spec/mangopay/payment_method_metadata_spec.rb
169
- - spec/mangopay/payout_bankwire_spec.rb
170
- - spec/mangopay/preauthorization_spec.rb
171
- - spec/mangopay/recipient_spec.rb
172
- - spec/mangopay/recurring_payin_spec.rb
173
- - spec/mangopay/refund_spec.rb
174
- - spec/mangopay/regulatory_spec.rb
175
- - spec/mangopay/report_spec.rb
176
- - spec/mangopay/report_v2_spec.rb
177
- - spec/mangopay/report_wallets_spec.rb
178
- - spec/mangopay/settlement_sample.csv
179
- - spec/mangopay/settlement_sample_bad.csv
180
- - spec/mangopay/settlement_spec.rb
181
- - spec/mangopay/shared_resources.rb
182
- - spec/mangopay/transaction_spec.rb
183
- - spec/mangopay/transfer_spec.rb
184
- - spec/mangopay/ubo_declaration_spec.rb
185
- - spec/mangopay/ubo_spec.rb
186
- - spec/mangopay/user_spec.rb
187
- - spec/mangopay/virtual_account_spec.rb
188
- - spec/mangopay/wallet_spec.rb
189
- - spec/spec_helper.rb
190
- - spec/tmp/.keep
191
130
  homepage: http://docs.mangopay.com/
192
131
  licenses:
193
132
  - MIT
@@ -200,83 +139,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
200
139
  requirements:
201
140
  - - ">="
202
141
  - !ruby/object:Gem::Version
203
- version: 1.9.2
142
+ version: 3.3.0
204
143
  required_rubygems_version: !ruby/object:Gem::Requirement
205
144
  requirements:
206
145
  - - ">="
207
146
  - !ruby/object:Gem::Version
208
147
  version: '0'
209
148
  requirements: []
210
- rubygems_version: 3.0.3.1
149
+ rubygems_version: 3.5.22
211
150
  signing_key:
212
151
  specification_version: 4
213
152
  summary: Ruby bindings for the version 2 of the MANGOPAY API
214
- test_files:
215
- - spec/mangopay/acquiring_spec.rb
216
- - spec/mangopay/authorization_token_spec.rb
217
- - spec/mangopay/bank_account_spec.rb
218
- - spec/mangopay/bankingaliases_spec.rb
219
- - spec/mangopay/card_registration_spec.rb
220
- - spec/mangopay/client_spec.png
221
- - spec/mangopay/client_spec.rb
222
- - spec/mangopay/configuration_spec.rb
223
- - spec/mangopay/conversion_spec.rb
224
- - spec/mangopay/deposit_spec.rb
225
- - spec/mangopay/dispute_spec.png
226
- - spec/mangopay/dispute_spec.rb
227
- - spec/mangopay/event_spec.rb
228
- - spec/mangopay/fetch_filters_spec.rb
229
- - spec/mangopay/hook_spec.rb
230
- - spec/mangopay/idempotency_spec.rb
231
- - spec/mangopay/identity_verification_spec.rb
232
- - spec/mangopay/kyc_document_spec.png
233
- - spec/mangopay/kyc_document_spec.rb
234
- - spec/mangopay/log_requests_filter_spec.rb
235
- - spec/mangopay/mandate_spec.rb
236
- - spec/mangopay/payin_applepay_direct_spec.rb
237
- - spec/mangopay/payin_bancontact_web_spec.rb
238
- - spec/mangopay/payin_bankwire_direct_spec.rb
239
- - spec/mangopay/payin_bankwire_external_instruction_spec.rb
240
- - spec/mangopay/payin_bizum_web_spec.rb
241
- - spec/mangopay/payin_blik_web_spec.rb
242
- - spec/mangopay/payin_card_direct_spec.rb
243
- - spec/mangopay/payin_card_web_spec.rb
244
- - spec/mangopay/payin_directdebit_direct_spec.rb
245
- - spec/mangopay/payin_directdebit_web_spec.rb
246
- - spec/mangopay/payin_giropay_web_spec.rb
247
- - spec/mangopay/payin_googlepay_direct_spec.rb
248
- - spec/mangopay/payin_ideal_web_spec.rb
249
- - spec/mangopay/payin_intent_spec.rb
250
- - spec/mangopay/payin_klarna_web_spec.rb
251
- - spec/mangopay/payin_mbway_web_spec.rb
252
- - spec/mangopay/payin_multibanco_web_spec.rb
253
- - spec/mangopay/payin_paybybank_web_spec.rb
254
- - spec/mangopay/payin_payconiq_web_spec.rb
255
- - spec/mangopay/payin_paypal_web_spec.rb
256
- - spec/mangopay/payin_preauthorized_direct_spec.rb
257
- - spec/mangopay/payin_satispay_web_spec.rb
258
- - spec/mangopay/payin_swish_web_spec.rb
259
- - spec/mangopay/payin_twint_web_spec.rb
260
- - spec/mangopay/payment_method_metadata_spec.rb
261
- - spec/mangopay/payout_bankwire_spec.rb
262
- - spec/mangopay/preauthorization_spec.rb
263
- - spec/mangopay/recipient_spec.rb
264
- - spec/mangopay/recurring_payin_spec.rb
265
- - spec/mangopay/refund_spec.rb
266
- - spec/mangopay/regulatory_spec.rb
267
- - spec/mangopay/report_spec.rb
268
- - spec/mangopay/report_v2_spec.rb
269
- - spec/mangopay/report_wallets_spec.rb
270
- - spec/mangopay/settlement_sample.csv
271
- - spec/mangopay/settlement_sample_bad.csv
272
- - spec/mangopay/settlement_spec.rb
273
- - spec/mangopay/shared_resources.rb
274
- - spec/mangopay/transaction_spec.rb
275
- - spec/mangopay/transfer_spec.rb
276
- - spec/mangopay/ubo_declaration_spec.rb
277
- - spec/mangopay/ubo_spec.rb
278
- - spec/mangopay/user_spec.rb
279
- - spec/mangopay/virtual_account_spec.rb
280
- - spec/mangopay/wallet_spec.rb
281
- - spec/spec_helper.rb
282
- - spec/tmp/.keep
153
+ test_files: []
@@ -1,34 +0,0 @@
1
- name: mangopay4-ruby-cd
2
-
3
- on:
4
- push:
5
- # Sequence of patterns matched against refs/tags
6
- tags:
7
- # It pushes any tags that contain a v. ex: v1.16.1
8
- - '*'
9
-
10
- jobs:
11
- build:
12
- name: Build + Publish
13
- runs-on: ubuntu-latest
14
- permissions:
15
- contents: read
16
- packages: write
17
-
18
- steps:
19
- - uses: actions/checkout@v3
20
- - name: Set up Ruby 2.6
21
- uses: ruby/setup-ruby@v1
22
- with:
23
- ruby-version: 2.6.10
24
-
25
- - name: Publish to RubyGems
26
- run: |
27
- mkdir -p $HOME/.gem
28
- touch $HOME/.gem/credentials
29
- chmod 0600 $HOME/.gem/credentials
30
- printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
31
- gem build *.gemspec
32
- gem push *.gem
33
- env:
34
- GEM_HOST_API_KEY: "${{secrets.GEM_HOST_API_KEY}}"
@@ -1,30 +0,0 @@
1
- name: mangopay4-ruby-ci
2
-
3
- on:
4
- push:
5
- branches:
6
- # push on master branch
7
- - master
8
- pull_request:
9
- branches: [ master ]
10
-
11
- jobs:
12
- build:
13
- name: Build
14
- runs-on: ubuntu-latest
15
- permissions:
16
- contents: read
17
- packages: write
18
-
19
- steps:
20
- - uses: actions/checkout@v3
21
- - name: Set up Ruby 2.6
22
- uses: ruby/setup-ruby@v1
23
- with:
24
- ruby-version: 2.6.10
25
- - name: Install Rspec
26
- run: |
27
- gem install bundler -v 2.4.22
28
- bundler install
29
- - name: Test
30
- run: bundle exec rspec
data/.gitignore DELETED
@@ -1,30 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- coverage
6
- InstalledFiles
7
- lib/bundler/man
8
- pkg
9
- rdoc
10
- spec/reports
11
- spec/tmp/*.tmp
12
- test/tmp
13
- test/version_tmp
14
- tags
15
-
16
- # YARD artifacts
17
- .yardoc
18
- _yardoc
19
- doc/
20
-
21
- .DS_Store
22
- .rvmrc
23
- /Gemfile.lock
24
- /mangopay-*.gem
25
-
26
- /nbproject/
27
-
28
- /*.sublime-*
29
-
30
- .idea
data/.rspec DELETED
@@ -1,3 +0,0 @@
1
- --color
2
- --profile
3
- --r spec_helper
data/Gemfile DELETED
@@ -1,2 +0,0 @@
1
- source "https://rubygems.org"
2
- gemspec
data/Rakefile DELETED
@@ -1,5 +0,0 @@
1
- require "bundler/gem_tasks"
2
-
3
- task :hello do
4
- puts "Running Rakefile"
5
- end
data/bin/mangopay DELETED
@@ -1,9 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb'
4
-
5
- libs = " -r irb/completion"
6
- libs << " -r #{File.dirname(__FILE__) + '/../lib/mangopay'}"
7
-
8
- puts "Loading MangoPay gem"
9
- exec "#{irb} #{libs}"
@@ -1,202 +0,0 @@
1
- xdescribe MangoPay::Acquiring do
2
- include_context 'wallets'
3
- include_context 'payins'
4
-
5
- let(:card_id) { 'placeholder' }
6
- let(:author_id) { 'placeholder' }
7
-
8
- describe 'PAY_IN CARD DIRECT' do
9
- it 'creates a Card Direct PayIn' do
10
- created = create_new_pay_in_card_direct
11
-
12
- assert_common_pay_in_properties(created)
13
- expect(created['PaymentType']).to eq('CARD')
14
- expect(created['ExecutionType']).to eq('DIRECT')
15
- end
16
- end
17
-
18
- describe 'REFUND' do
19
- it 'creates a Refund for a PayIn' do
20
- pay_in = create_new_pay_in_card_direct
21
- refund = MangoPay::Acquiring::Refund.create(pay_in['Id'], { DebitedFunds: { Currency: 'EUR', Amount: 10 } })
22
-
23
- expect(refund['Id']).not_to be_nil
24
- expect(refund['Status']).to eq('SUCCEEDED')
25
- expect(refund['Type']).to eq('PAYOUT')
26
- expect(refund['Nature']).to eq('REFUND')
27
- expect(refund['InitialTransactionType']).to eq('PAYIN')
28
- expect(refund['InitialTransactionId']).to eq(pay_in['Id'])
29
- end
30
- end
31
-
32
- describe 'PAY_IN APPLE_PAY' do
33
- it 'creates an ApplePay direct PayIn' do
34
- created = MangoPay::Acquiring::PayIn::ApplePay::Direct.create(
35
- DebitedFunds: { Currency: 'EUR', Amount: 100 },
36
- PaymentData: {
37
- transactionId: "97e64d87f13a89ff6443cdcc205d5ccf7e15368b0d64126a8a2e0888a3a5c2a0",
38
- network: "MasterCard",
39
- tokenDataø: "{\"data\":\"2TihgKbmyPje02.........wAAAAAAAA==\",\"header\":{\"publicKeyHash\":\"xUyeFb75d359bfPEiq2JJMQj694UAxtTuBsaTWMOJxQ=\",\"ephemeralPublicKey\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkeuICjZ7x15b7hPEBEBT5Zp43l95wCmJCU3QNxBvOCusG9w9sJMULuXlT4K8LOlPgaZzAcyWlfNwnLivVdOPfg==\",\"transactionId\":\"97e64d87f13a89ff6443cdcc205d5ccf7e15368b0d64126a8a2e0888a3a5c2a0\"},\"version\":\"EC_v1\"}"
40
- }
41
- )
42
-
43
- assert_common_pay_in_properties(created)
44
- expect(created['PaymentType']).to eq('APPLEPAY')
45
- expect(created['ExecutionType']).to eq('DIRECT')
46
- end
47
- end
48
-
49
- describe 'PAY_IN GOOGLE_PAY' do
50
- it 'creates a GooglePay direct PayIn' do
51
- created = MangoPay::Acquiring::PayIn::GooglePay::Direct.create(
52
- DebitedFunds: { Currency: 'EUR', Amount: 199 },
53
- IpAddress: "2001:0620:0000:0000:0211:24FF:FE80:C12C",
54
- SecureModeReturnURL: 'http://test.com',
55
- BrowserInfo: {
56
- AcceptHeader: "text/html, application/xhtml+xml, application/xml;q=0.9, /;q=0.8",
57
- JavaEnabled: true,
58
- Language: "fr-FR",
59
- ColorDepth: 4,
60
- ScreenHeight: 1800,
61
- ScreenWidth: 400,
62
- JavascriptEnabled: true,
63
- TimeZoneOffset: "+60",
64
- UserAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
65
- },
66
- PaymentData: "{\"signature\":\"MEUCIQDc49/Bw1lTk8ok2fUe4UT......................\\u003d\\\"}\"}"
67
- )
68
-
69
- assert_common_pay_in_properties(created)
70
- expect(created['PaymentType']).to eq('GOOGLEPAY')
71
- expect(created['ExecutionType']).to eq('DIRECT')
72
- end
73
- end
74
-
75
- describe 'PAY_IN IDEAL WEB' do
76
- it 'creates an Ideal Web PayIn' do
77
- created = MangoPay::Acquiring::PayIn::Ideal::Web.create(
78
- DebitedFunds: { Currency: 'EUR', Amount: 100 },
79
- ReturnURL: 'http://www.my-site.com/returnURL'
80
- )
81
-
82
- assert_common_pay_in_properties(created)
83
- expect(created['PaymentType']).to eq('IDEAL')
84
- expect(created['ExecutionType']).to eq('WEB')
85
- end
86
- end
87
-
88
- describe 'PAY_IN PAYPAL' do
89
- it 'creates a PayPal Web PayIn' do
90
- created = MangoPay::Acquiring::PayIn::PayPal::Web.create(
91
- DebitedFunds: { Currency: 'EUR', Amount: 400 },
92
- ReturnUrl: "http://example.com",
93
- LineItems: [
94
- {
95
- Name: "running shoes",
96
- Quantity: 1,
97
- UnitAmount: 200,
98
- TaxAmount: 0,
99
- Description: "seller1 ID"
100
- },
101
- {
102
- Name: "running shoes",
103
- Quantity: 1,
104
- UnitAmount: 200,
105
- TaxAmount: 0,
106
- Description: "seller2 ID"
107
- }
108
- ]
109
- )
110
-
111
- assert_common_pay_in_properties(created)
112
- expect(created['PaymentType']).to eq('PAYPAL')
113
- expect(created['ExecutionType']).to eq('WEB')
114
- end
115
-
116
- it 'creates PayPal DataCollection' do
117
- data_collection = MangoPay::Acquiring::PayIn::PayPal::Web.create_data_collection(
118
- {
119
- "sender_account_id": "A12345N343",
120
- "sender_first_name": "Jane",
121
- "sender_last_name": "Doe",
122
- "sender_email": "jane.doe@sample.com",
123
- "sender_phone": "(042)11234567",
124
- "sender_address_zip": "75009",
125
- "sender_country_code": "FR",
126
- "sender_create_date": "2012-12-09T19:14:55.277-0:00",
127
- "sender_signup_ip": "10.220.90.20",
128
- "sender_popularity_score": "high",
129
- "receiver_account_id": "A12345N344",
130
- "receiver_create_date": "2012-12-09T19:14:55.277-0:00",
131
- "receiver_email": "jane@sample.com",
132
- "receiver_address_country_code": "FR",
133
- "business_name": "Jane Ltd",
134
- "recipient_popularity_score": "high",
135
- "first_interaction_date": "2012-12-09T19:14:55.277-0:00",
136
- "txn_count_total": "34",
137
- "vertical": "Household goods",
138
- "transaction_is_tangible": "0"
139
- }
140
- )
141
- expect(data_collection['dataCollectionId']).not_to be_nil
142
- end
143
- end
144
-
145
- describe 'CARD VALIDATION' do
146
- it 'creates card validation' do
147
- params = {
148
- AuthorId: author_id,
149
- SecureModeReturnURL: "https://mangopay.com",
150
- IpAddress: "2001:0620:0000:0000:0211:24FF:FE80:C12C",
151
- Tag: "custom meta",
152
- BrowserInfo: {
153
- AcceptHeader: "text/html, application/xhtml+xml, application/xml;q=0.9, /;q=0.8",
154
- JavaEnabled: true,
155
- Language: "FR-FR",
156
- ColorDepth: 4,
157
- ScreenHeight: 1800,
158
- ScreenWidth: 400,
159
- JavascriptEnabled: true,
160
- TimeZoneOffset: "+60",
161
- UserAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
162
- }
163
- }
164
- card_validation = MangoPay::Acquiring::PayIn::Card.create_card_validation(card_id, params)
165
- expect(card_validation).not_to be_nil
166
- expect("SUCCEEDED").to eq(card_validation['Status'])
167
- end
168
- end
169
-
170
- def create_new_pay_in_card_direct
171
- MangoPay::Acquiring::PayIn::Card::Direct.create(
172
- DebitedFunds: { Currency: 'EUR', Amount: 100 },
173
- CardType: 'CB_VISA_MASTERCARD',
174
- CardId: card_id,
175
- SecureMode: 'DEFAULT',
176
- SecureModeReturnURL: 'http://test.com',
177
- Tag: 'Acquiring Test PayIn/Card/Direct',
178
- BrowserInfo: {
179
- AcceptHeader: "text/html, application/xhtml+xml, application/xml;q=0.9, /;q=0.8",
180
- JavaEnabled: true,
181
- Language: "FR-FR",
182
- ColorDepth: 4,
183
- ScreenHeight: 1800,
184
- ScreenWidth: 400,
185
- JavascriptEnabled: true,
186
- TimeZoneOffset: "+60",
187
- UserAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 13_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
188
- },
189
- IpAddress: "2001:0620:0000:0000:0211:24FF:FE80:C12C"
190
- )
191
- end
192
-
193
- def assert_common_pay_in_properties(pay_in)
194
- expect(pay_in['Id']).not_to be_nil
195
- expect(pay_in['Type']).to eq('PAYIN')
196
- expect(pay_in['Nature']).to eq('REGULAR')
197
- expect(pay_in['Status']).to eq('SUCCEEDED')
198
- expect(pay_in['ResultCode']).to eq('000000')
199
- expect(pay_in['ResultMessage']).to eq('Success')
200
- expect(pay_in['ExecutionDate']).to be > 0
201
- end
202
- end
@@ -1,70 +0,0 @@
1
- describe MangoPay::AuthorizationToken do
2
-
3
- _default_static_storage = MangoPay::AuthorizationToken::Manager.storage
4
- _new_file_storage = MangoPay::AuthorizationToken::FileStorage.new
5
-
6
- it 'uses StaticStorage strategy by default' do
7
- storage = _default_static_storage
8
- expect(storage).to be_kind_of MangoPay::AuthorizationToken::StaticStorage
9
- end
10
-
11
- it 'allows set different storage strategies' do
12
-
13
- # set to FileStorage
14
- file_storage = _new_file_storage
15
- MangoPay::AuthorizationToken::Manager.storage = file_storage
16
- storage = MangoPay::AuthorizationToken::Manager.storage
17
- expect(storage).to be file_storage
18
-
19
- # reset to StaticStorage
20
- static_storage = _default_static_storage
21
- MangoPay::AuthorizationToken::Manager.storage = static_storage
22
- storage = MangoPay::AuthorizationToken::Manager.storage
23
- expect(storage).to be static_storage
24
- end
25
-
26
- describe MangoPay::AuthorizationToken::StaticStorage do
27
- it 'shares tokens between calls' do
28
- MangoPay::AuthorizationToken::Manager.storage = _default_static_storage
29
- users1 = MangoPay::User.fetch
30
- token1 = MangoPay::AuthorizationToken::Manager.get_token
31
- users2 = MangoPay::User.fetch
32
- token2 = MangoPay::AuthorizationToken::Manager.get_token
33
- expect(token1).to eq token2
34
- expect(token1).to be token2 # moreover, it's the same instance
35
- end
36
- end
37
-
38
- describe MangoPay::AuthorizationToken::FileStorage do
39
- it 'shares tokens between calls' do
40
- MangoPay::AuthorizationToken::Manager.storage = _new_file_storage
41
-
42
- users1 = MangoPay::User.fetch
43
- token1 = MangoPay::AuthorizationToken::Manager.get_token
44
- users2 = MangoPay::User.fetch
45
- token2 = MangoPay::AuthorizationToken::Manager.get_token
46
- expect(token1).to eq token2
47
- expect(token1).not_to be token2 # it's NOT the same instance
48
-
49
- MangoPay::AuthorizationToken::Manager.storage = _default_static_storage # cleanup
50
- end
51
-
52
- it 'uses temp file with serialized token' do
53
- MangoPay::AuthorizationToken::Manager.storage = _new_file_storage
54
-
55
- file_path = _new_file_storage.file_path
56
- dir_path = MangoPay.configuration.temp_dir
57
- expect(file_path.start_with? dir_path).to be(true)
58
-
59
- token = MangoPay::AuthorizationToken::Manager.get_token
60
- expect(File.exists? file_path).to be(true)
61
-
62
- f = File.open(file_path, File::RDONLY)
63
- txt = f.read
64
- f.close
65
- expect(txt.include? token['access_token']).to be(true)
66
-
67
- MangoPay::AuthorizationToken::Manager.storage = _default_static_storage # cleanup
68
- end
69
- end
70
- end