adyen-ruby-api-library 5.0.0 → 6.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.
- checksums.yaml +4 -4
- data/.github/CODEOWNERS +1 -1
- data/.github/workflows/ruby.yml +20 -0
- data/.gitignore +2 -0
- data/README.md +3 -3
- data/docs/checkout.html +2 -2
- data/docs/index.html +2 -2
- data/docs/install-library.html +2 -2
- data/docs/marketpay.html +4 -2
- data/docs/payment.html +2 -2
- data/docs/payout.html +2 -2
- data/docs/recurring.html +2 -2
- data/docs/using-library.html +2 -2
- data/lib/adyen/client.rb +8 -2
- data/lib/adyen/errors.rb +5 -2
- data/lib/adyen/services/checkout.rb +19 -1
- data/lib/adyen/services/marketpay.rb +1 -0
- data/lib/adyen/services/payments.rb +1 -1
- data/lib/adyen/version.rb +1 -1
- data/spec/account_spec.rb +1 -0
- data/spec/checkout_spec.rb +62 -2
- data/spec/errors_spec.rb +9 -0
- data/spec/mocks/requests/Account/delete_signatories.json +6 -0
- data/spec/mocks/requests/Checkout/apple_pay_sessions.json +5 -0
- data/spec/mocks/requests/Checkout/sessions.json +10 -0
- data/spec/mocks/responses/Account/delete_signatories.json +3 -0
- data/spec/mocks/responses/Checkout/apple_pay_sessions.json +3 -0
- data/spec/mocks/responses/Checkout/sessions-success.json +11 -0
- data/spec/service_spec.rb +1 -0
- metadata +10 -5
- data/.travis.yml +0 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4b2156b9db20964cb7f43be56c19a462ccc091e42fdcecd887c9da04dc880116
|
|
4
|
+
data.tar.gz: 47cb2a027baa58061a6eb46e5c703ff7bc18b05002e5a7c0c5b9d9e9d68616fd
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a1e4c4a2fd0b91b3e375a66a59910548a9e272beb8940e2ecf6432593e2c14494006d7d6387020245fea48af0f24b50b7803d135db654294e9079c842f818390
|
|
7
|
+
data.tar.gz: de54e9a6c6da6a49b922d26cb6197651f59f145fef43412bfdf50863097f287d8139dd1647e6efd585d1c08d8dbffaca845f16e0e46ec49334e323f73ade74d1
|
data/.github/CODEOWNERS
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
* @crrood @
|
|
1
|
+
* @crrood @wboereboom @AlexandrosMor @michaelpaul
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
name: ruby
|
|
2
|
+
|
|
3
|
+
on: [push, pull_request]
|
|
4
|
+
|
|
5
|
+
jobs:
|
|
6
|
+
test:
|
|
7
|
+
strategy:
|
|
8
|
+
fail-fast: false
|
|
9
|
+
matrix:
|
|
10
|
+
os: [ubuntu-latest]
|
|
11
|
+
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
|
12
|
+
ruby: [2.5, 2.6, 2.7, '3.0', head]
|
|
13
|
+
runs-on: ${{ matrix.os }}
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v2
|
|
16
|
+
- uses: ruby/setup-ruby@v1
|
|
17
|
+
with:
|
|
18
|
+
ruby-version: ${{ matrix.ruby }}
|
|
19
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
|
20
|
+
- run: bundle exec rspec
|
data/.gitignore
CHANGED
data/README.md
CHANGED
|
@@ -6,7 +6,7 @@ This is the officially supported Ruby library for using Adyen's APIs.
|
|
|
6
6
|
## Integration
|
|
7
7
|
The library supports all APIs under the following services:
|
|
8
8
|
|
|
9
|
-
* [Checkout API](https://docs.adyen.com/api-explorer/#/CheckoutService/
|
|
9
|
+
* [Checkout API](https://docs.adyen.com/api-explorer/#/CheckoutService/v68/overview): Our latest integration for accepting online payments. Current supported version: **v68**
|
|
10
10
|
* [Payments API](https://docs.adyen.com/api-explorer/#/Payment/v64/overview): Our classic integration for online payments. Current supported version: **v64**
|
|
11
11
|
* [Recurring API](https://docs.adyen.com/api-explorer/#/Recurring/v49/overview): Endpoints for managing saved payment details. Current supported version: **v49**
|
|
12
12
|
* [Payouts API](https://docs.adyen.com/api-explorer/#/Payout/v64/overview): Endpoints for sending funds to your customers. Current supported version: **v64**
|
|
@@ -84,7 +84,7 @@ response = adyen.checkout.payments({
|
|
|
84
84
|
|
|
85
85
|
- Change API Version
|
|
86
86
|
~~~~ruby
|
|
87
|
-
adyen.checkout.version =
|
|
87
|
+
adyen.checkout.version = 68
|
|
88
88
|
~~~~
|
|
89
89
|
|
|
90
90
|
### Example integration
|
|
@@ -108,7 +108,7 @@ If you have a feature request, or spotted a bug or a technical problem, [create
|
|
|
108
108
|
For other questions, [contact our Support Team](https://www.adyen.help/hc/en-us/requests/new?ticket_form_id=360000705420).
|
|
109
109
|
|
|
110
110
|
## Licence
|
|
111
|
-
This repository is available under the [MIT license](https://github.com/Adyen/adyen-ruby-api-library/blob/
|
|
111
|
+
This repository is available under the [MIT license](https://github.com/Adyen/adyen-ruby-api-library/blob/main/LICENSE).
|
|
112
112
|
|
|
113
113
|
## See also
|
|
114
114
|
* [Example integration](https://github.com/adyen-examples/adyen-rails-online-payments)
|
data/docs/checkout.html
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
25
25
|
<ul>
|
|
26
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
27
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
26
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
27
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
28
28
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
29
29
|
</ul>
|
|
30
30
|
</header>
|
data/docs/index.html
CHANGED
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
22
22
|
|
|
23
23
|
<ul>
|
|
24
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
25
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
24
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
25
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
26
26
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
27
27
|
</ul>
|
|
28
28
|
</header>
|
data/docs/install-library.html
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
<ul>
|
|
28
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
29
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
28
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
29
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
30
30
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
31
31
|
</ul>
|
|
32
32
|
</header>
|
data/docs/marketpay.html
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
25
25
|
<ul>
|
|
26
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
27
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
26
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
27
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
28
28
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
29
29
|
</ul>
|
|
30
30
|
</header>
|
|
@@ -61,6 +61,8 @@
|
|
|
61
61
|
<li>delete_bank_accounts</li>
|
|
62
62
|
|
|
63
63
|
<li>delete_shareholders</li>
|
|
64
|
+
|
|
65
|
+
<li>delete_signatories</li>
|
|
64
66
|
</ul>
|
|
65
67
|
|
|
66
68
|
<h4 id="marketpayfund">marketpay.fund:</h4>
|
data/docs/payment.html
CHANGED
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
|
|
25
25
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
26
26
|
<ul>
|
|
27
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
28
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
27
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
28
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
29
29
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
30
30
|
</ul>
|
|
31
31
|
</header>
|
data/docs/payout.html
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
25
25
|
<ul>
|
|
26
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
27
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
26
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
27
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
28
28
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
29
29
|
</ul>
|
|
30
30
|
</header>
|
data/docs/recurring.html
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
|
|
24
24
|
<p class="view"><a href="https://github.com/Adyen/adyen-ruby-api-library">View the Project on GitHub <small>Adyen/adyen-ruby-api-library</small></a></p>
|
|
25
25
|
<ul>
|
|
26
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
27
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
26
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
27
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
28
28
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
29
29
|
</ul>
|
|
30
30
|
</header>
|
data/docs/using-library.html
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
<ul>
|
|
28
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/
|
|
29
|
-
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/
|
|
28
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/zipball/main">Download <strong>ZIP File</strong></a></li>
|
|
29
|
+
<li><a href="https://github.com/Adyen/adyen-ruby-api-library/tarball/main">Download <strong>TAR Ball</strong></a></li>
|
|
30
30
|
<li><a href="https://github.com/Adyen/adyen-ruby-api-library">View On <strong>GitHub</strong></a></li>
|
|
31
31
|
</ul>
|
|
32
32
|
</header>
|
data/lib/adyen/client.rb
CHANGED
|
@@ -104,7 +104,13 @@ module Adyen
|
|
|
104
104
|
# set auth type based on service
|
|
105
105
|
case auth_type
|
|
106
106
|
when "basic"
|
|
107
|
-
|
|
107
|
+
if Gem::Version.new(Faraday::VERSION) >= Gem::Version.new('2.0')
|
|
108
|
+
# for faraday 2.0 and higher
|
|
109
|
+
faraday.request :authorization, :basic, @ws_user, @ws_password
|
|
110
|
+
else
|
|
111
|
+
# for faraday 1.x
|
|
112
|
+
faraday.basic_auth(@ws_user, @ws_password)
|
|
113
|
+
end
|
|
108
114
|
when "api-key"
|
|
109
115
|
faraday.headers["x-api-key"] = @api_key
|
|
110
116
|
end
|
|
@@ -132,7 +138,7 @@ module Adyen
|
|
|
132
138
|
if action.is_a?(::Hash)
|
|
133
139
|
if action.fetch(:method) == "get"
|
|
134
140
|
begin
|
|
135
|
-
response = conn.get
|
|
141
|
+
response = conn.get
|
|
136
142
|
rescue Faraday::ConnectionFailed => connection_error
|
|
137
143
|
raise connection_error, "Connection to #{url} failed"
|
|
138
144
|
end
|
data/lib/adyen/errors.rb
CHANGED
|
@@ -3,7 +3,10 @@ module Adyen
|
|
|
3
3
|
attr_reader :code, :response, :request, :msg
|
|
4
4
|
|
|
5
5
|
def initialize(request = nil, response = nil, msg = nil, code = nil)
|
|
6
|
-
|
|
6
|
+
unless request.nil?
|
|
7
|
+
request = request.is_a?(Hash) ? request : JSON.parse(request, symbolize_names: true)
|
|
8
|
+
mask_fields(request)
|
|
9
|
+
end
|
|
7
10
|
|
|
8
11
|
# components of formatted error message
|
|
9
12
|
attributes = {
|
|
@@ -37,7 +40,7 @@ module Adyen
|
|
|
37
40
|
]
|
|
38
41
|
|
|
39
42
|
# convert to hash if necessary
|
|
40
|
-
request = request.is_a?(Hash) ? request : JSON.parse(request)
|
|
43
|
+
request = request.is_a?(Hash) ? request : JSON.parse(request, symbolize_names: true)
|
|
41
44
|
|
|
42
45
|
# iterate through request to find fields to mask
|
|
43
46
|
request.each do |k, v|
|
|
@@ -2,13 +2,14 @@ require_relative "service"
|
|
|
2
2
|
|
|
3
3
|
module Adyen
|
|
4
4
|
class Checkout < Service
|
|
5
|
-
DEFAULT_VERSION =
|
|
5
|
+
DEFAULT_VERSION = 68
|
|
6
6
|
|
|
7
7
|
def initialize(client, version = DEFAULT_VERSION)
|
|
8
8
|
service = "Checkout"
|
|
9
9
|
method_names = [
|
|
10
10
|
:payment_session,
|
|
11
11
|
:origin_keys,
|
|
12
|
+
:sessions
|
|
12
13
|
]
|
|
13
14
|
|
|
14
15
|
with_application_info = [
|
|
@@ -66,6 +67,10 @@ module Adyen
|
|
|
66
67
|
@client.call_adyen_api(@service, action, args[0], args[1], @version)
|
|
67
68
|
end
|
|
68
69
|
end
|
|
70
|
+
|
|
71
|
+
def apple_pay
|
|
72
|
+
@apple_pay ||= Adyen::CheckoutApplePay.new(@client, @version)
|
|
73
|
+
end
|
|
69
74
|
end
|
|
70
75
|
|
|
71
76
|
class CheckoutDetail < Service
|
|
@@ -129,4 +134,17 @@ module Adyen
|
|
|
129
134
|
@client.call_adyen_api(@service, action, request, headers, @version)
|
|
130
135
|
end
|
|
131
136
|
end
|
|
137
|
+
|
|
138
|
+
class CheckoutApplePay < Service
|
|
139
|
+
def initialize(client, version = DEFAULT_VERSION)
|
|
140
|
+
@service = "Checkout"
|
|
141
|
+
@client = client
|
|
142
|
+
@version = version
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
def sessions(request, headers = {})
|
|
146
|
+
action = "applePay/sessions"
|
|
147
|
+
@client.call_adyen_api(@service, action, request, headers, @version)
|
|
148
|
+
end
|
|
149
|
+
end
|
|
132
150
|
end
|
data/lib/adyen/version.rb
CHANGED
data/spec/account_spec.rb
CHANGED
|
@@ -21,6 +21,7 @@ RSpec.describe Adyen::Payments, service: "marketpay account service" do
|
|
|
21
21
|
["get_uploaded_documents", "pspReference", "9914694369860322"],
|
|
22
22
|
["delete_bank_accounts", "pspReference", "9914694372670551"],
|
|
23
23
|
["delete_shareholders", "pspReference", "9914694372990637"],
|
|
24
|
+
["delete_signatories", "pspReference", "9914694372990637"],
|
|
24
25
|
["delete_payout_methods", "pspReference", "9914694372990637"],
|
|
25
26
|
["check_account_holder", "pspReference", "9914694372990637"],
|
|
26
27
|
]
|
data/spec/checkout_spec.rb
CHANGED
|
@@ -172,7 +172,7 @@ RSpec.describe Adyen::Checkout, service: "checkout" do
|
|
|
172
172
|
expect(response_hash.resultCode).
|
|
173
173
|
to eq("Authorised")
|
|
174
174
|
end
|
|
175
|
-
|
|
175
|
+
|
|
176
176
|
# must be created manually due to paymentsLinks format
|
|
177
177
|
it "makes a paymentLinks call" do
|
|
178
178
|
request_body = JSON.parse(json_from_file("mocks/requests/Checkout/payment_links.json"))
|
|
@@ -210,7 +210,7 @@ RSpec.describe Adyen::Checkout, service: "checkout" do
|
|
|
210
210
|
expect(response_hash).
|
|
211
211
|
to be_a_kind_of Hash
|
|
212
212
|
end
|
|
213
|
-
|
|
213
|
+
|
|
214
214
|
# must be created manually due to paymentsLinks/{linkId} format
|
|
215
215
|
it "makes a get paymentLinks/{linkId} call" do
|
|
216
216
|
response_body = json_from_file("mocks/responses/Checkout/get-payment-link.json")
|
|
@@ -345,6 +345,66 @@ RSpec.describe Adyen::Checkout, service: "checkout" do
|
|
|
345
345
|
to eq("cancelled")
|
|
346
346
|
end
|
|
347
347
|
|
|
348
|
+
it "makes an applePay/sessions call" do
|
|
349
|
+
request_body = JSON.parse(json_from_file("mocks/requests/Checkout/apple_pay_sessions.json"))
|
|
350
|
+
|
|
351
|
+
response_body = json_from_file("mocks/responses/Checkout/apple_pay_sessions.json")
|
|
352
|
+
|
|
353
|
+
url = @shared_values[:client].service_url(@shared_values[:service], "applePay/sessions", @shared_values[:client].checkout.version)
|
|
354
|
+
WebMock.stub_request(:post, url).
|
|
355
|
+
with(
|
|
356
|
+
body: request_body,
|
|
357
|
+
headers: {
|
|
358
|
+
"x-api-key" => @shared_values[:client].api_key
|
|
359
|
+
}
|
|
360
|
+
).
|
|
361
|
+
to_return(
|
|
362
|
+
body: response_body
|
|
363
|
+
)
|
|
364
|
+
|
|
365
|
+
result = @shared_values[:client].checkout.apple_pay.sessions(request_body)
|
|
366
|
+
response_hash = result.response
|
|
367
|
+
|
|
368
|
+
expect(result.status).
|
|
369
|
+
to eq(200)
|
|
370
|
+
expect(response_hash).
|
|
371
|
+
to eq(JSON.parse(response_body))
|
|
372
|
+
expect(response_hash).
|
|
373
|
+
to be_a Adyen::HashWithAccessors
|
|
374
|
+
expect(response_hash).
|
|
375
|
+
to be_a_kind_of Hash
|
|
376
|
+
expect(response_hash["data"]).
|
|
377
|
+
to eq("LARGE_BLOB_HERE")
|
|
378
|
+
end
|
|
379
|
+
|
|
380
|
+
it "makes a sessions call" do
|
|
381
|
+
request_body = JSON.parse(json_from_file("mocks/requests/Checkout/sessions.json"))
|
|
382
|
+
|
|
383
|
+
response_body = json_from_file("mocks/responses/Checkout/sessions-success.json")
|
|
384
|
+
|
|
385
|
+
url = @shared_values[:client].service_url(@shared_values[:service], "sessions", @shared_values[:client].checkout.version)
|
|
386
|
+
WebMock.stub_request(:post, url).
|
|
387
|
+
with(
|
|
388
|
+
body: request_body,
|
|
389
|
+
headers: {
|
|
390
|
+
"x-api-key" => @shared_values[:client].api_key
|
|
391
|
+
}
|
|
392
|
+
)
|
|
393
|
+
.to_return(body: response_body, status: 201)
|
|
394
|
+
|
|
395
|
+
result = @shared_values[:client].checkout.sessions(request_body)
|
|
396
|
+
response_hash = result.response
|
|
397
|
+
|
|
398
|
+
expect(result.status).
|
|
399
|
+
to eq(201)
|
|
400
|
+
expect(response_hash).
|
|
401
|
+
to eq(JSON.parse(response_body))
|
|
402
|
+
expect(response_hash).
|
|
403
|
+
to be_a Adyen::HashWithAccessors
|
|
404
|
+
expect(response_hash).
|
|
405
|
+
to be_a_kind_of Hash
|
|
406
|
+
end
|
|
407
|
+
|
|
348
408
|
# create client for automated tests
|
|
349
409
|
client = create_client(:api_key)
|
|
350
410
|
|
data/spec/errors_spec.rb
CHANGED
|
@@ -43,5 +43,14 @@ RSpec.describe Adyen::AdyenError do
|
|
|
43
43
|
it 'masks CVC when logging request in errors' do
|
|
44
44
|
expect(Adyen::AdyenError.new(@shared_values[:request], 'response', 'message', 'code').request[:paymentMethod][:cvc]).to eq('***')
|
|
45
45
|
end
|
|
46
|
+
|
|
47
|
+
context 'when request is string' do
|
|
48
|
+
it 'masks card number when logging request in errors' do
|
|
49
|
+
expect(Adyen::AdyenError.new(JSON.generate(@shared_values[:request]), 'response', 'message', 'code').request[:paymentMethod][:number]).to eq('411111******1111')
|
|
50
|
+
end
|
|
51
|
+
it 'masks CVC when logging request in errors' do
|
|
52
|
+
expect(Adyen::AdyenError.new(JSON.generate(@shared_values[:request]), 'response', 'message', 'code').request[:paymentMethod][:cvc]).to eq('***')
|
|
53
|
+
end
|
|
54
|
+
end
|
|
46
55
|
end
|
|
47
56
|
end
|
data/spec/service_spec.rb
CHANGED
|
@@ -18,6 +18,7 @@ RSpec.describe Adyen::Service do
|
|
|
18
18
|
expect(described_class.action_for_method_name(:decline_third_party)).to eq 'declineThirdParty'
|
|
19
19
|
expect(described_class.action_for_method_name(:delete_bank_accounts)).to eq 'deleteBankAccounts'
|
|
20
20
|
expect(described_class.action_for_method_name(:delete_shareholders)).to eq 'deleteShareholders'
|
|
21
|
+
expect(described_class.action_for_method_name(:delete_signatories)).to eq 'deleteSignatories'
|
|
21
22
|
expect(described_class.action_for_method_name(:disable)).to eq 'disable'
|
|
22
23
|
expect(described_class.action_for_method_name(:donate)).to eq 'donate'
|
|
23
24
|
expect(described_class.action_for_method_name(:get_account_holder)).to eq 'getAccountHolder'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: adyen-ruby-api-library
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 6.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Adyen
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-08-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: faraday
|
|
@@ -81,8 +81,8 @@ files:
|
|
|
81
81
|
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
|
82
82
|
- ".github/PULL_REQUEST_TEMPLATE.md"
|
|
83
83
|
- ".github/dependabot.yml"
|
|
84
|
+
- ".github/workflows/ruby.yml"
|
|
84
85
|
- ".gitignore"
|
|
85
|
-
- ".travis.yml"
|
|
86
86
|
- CODE_OF_CONDUCT.md
|
|
87
87
|
- CONTRIBUTING.md
|
|
88
88
|
- Gemfile
|
|
@@ -142,6 +142,7 @@ files:
|
|
|
142
142
|
- spec/mocks/requests/Account/delete_bank_accounts.json
|
|
143
143
|
- spec/mocks/requests/Account/delete_payout_methods.json
|
|
144
144
|
- spec/mocks/requests/Account/delete_shareholders.json
|
|
145
|
+
- spec/mocks/requests/Account/delete_signatories.json
|
|
145
146
|
- spec/mocks/requests/Account/get_account_holder.json
|
|
146
147
|
- spec/mocks/requests/Account/get_uploaded_documents.json
|
|
147
148
|
- spec/mocks/requests/Account/suspend_account_holder.json
|
|
@@ -152,6 +153,7 @@ files:
|
|
|
152
153
|
- spec/mocks/requests/Account/upload_document.json
|
|
153
154
|
- spec/mocks/requests/BinLookup/get_3ds_availability.json
|
|
154
155
|
- spec/mocks/requests/BinLookup/get_cost_estimate.json
|
|
156
|
+
- spec/mocks/requests/Checkout/apple_pay_sessions.json
|
|
155
157
|
- spec/mocks/requests/Checkout/orders.json
|
|
156
158
|
- spec/mocks/requests/Checkout/orders_cancel.json
|
|
157
159
|
- spec/mocks/requests/Checkout/origin_keys.json
|
|
@@ -162,6 +164,7 @@ files:
|
|
|
162
164
|
- spec/mocks/requests/Checkout/payment_methods_balance.json
|
|
163
165
|
- spec/mocks/requests/Checkout/payment_session.json
|
|
164
166
|
- spec/mocks/requests/Checkout/payments.json
|
|
167
|
+
- spec/mocks/requests/Checkout/sessions.json
|
|
165
168
|
- spec/mocks/requests/Checkout/verify.json
|
|
166
169
|
- spec/mocks/requests/DataProtectionService/request_subject_erasure.json
|
|
167
170
|
- spec/mocks/requests/DisputeService/defend_dispute.json
|
|
@@ -216,6 +219,7 @@ files:
|
|
|
216
219
|
- spec/mocks/responses/Account/delete_bank_accounts.json
|
|
217
220
|
- spec/mocks/responses/Account/delete_payout_methods.json
|
|
218
221
|
- spec/mocks/responses/Account/delete_shareholders.json
|
|
222
|
+
- spec/mocks/responses/Account/delete_signatories.json
|
|
219
223
|
- spec/mocks/responses/Account/get_account_holder.json
|
|
220
224
|
- spec/mocks/responses/Account/get_uploaded_documents.json
|
|
221
225
|
- spec/mocks/responses/Account/suspend_account_holder.json
|
|
@@ -226,6 +230,7 @@ files:
|
|
|
226
230
|
- spec/mocks/responses/Account/upload_document.json
|
|
227
231
|
- spec/mocks/responses/BinLookup/get_3ds_availability.json
|
|
228
232
|
- spec/mocks/responses/BinLookup/get_cost_estimate.json
|
|
233
|
+
- spec/mocks/responses/Checkout/apple_pay_sessions.json
|
|
229
234
|
- spec/mocks/responses/Checkout/get-payment-link.json
|
|
230
235
|
- spec/mocks/responses/Checkout/orders.json
|
|
231
236
|
- spec/mocks/responses/Checkout/orders_cancel.json
|
|
@@ -237,6 +242,7 @@ files:
|
|
|
237
242
|
- spec/mocks/responses/Checkout/payment_methods_balance.json
|
|
238
243
|
- spec/mocks/responses/Checkout/payment_session.json
|
|
239
244
|
- spec/mocks/responses/Checkout/payments.json
|
|
245
|
+
- spec/mocks/responses/Checkout/sessions-success.json
|
|
240
246
|
- spec/mocks/responses/Checkout/update-payment-link.json
|
|
241
247
|
- spec/mocks/responses/Checkout/verify.json
|
|
242
248
|
- spec/mocks/responses/DataProtectionService/request_subject_erasure.json
|
|
@@ -314,8 +320,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
314
320
|
- !ruby/object:Gem::Version
|
|
315
321
|
version: '0'
|
|
316
322
|
requirements: []
|
|
317
|
-
|
|
318
|
-
rubygems_version: 2.7.8
|
|
323
|
+
rubygems_version: 3.1.2
|
|
319
324
|
signing_key:
|
|
320
325
|
specification_version: 4
|
|
321
326
|
summary: Official Adyen Ruby API Library
|