bambora-client 0.3.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/gempush.yml +3 -3
- data/.github/workflows/linter.yml +16 -3
- data/.github/workflows/ruby.yml +2 -2
- data/.rubocop.yml +1 -4
- data/.ruby-version +1 -1
- data/CHANGELOG.md +14 -0
- data/bambora-client.gemspec +4 -3
- data/lib/bambora/adapters/response.rb +8 -2
- data/lib/bambora/client/version.rb +1 -1
- data/lib/bambora/rest/client.rb +3 -0
- data/lib/bambora/v1/payment_resource.rb +16 -0
- metadata +28 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 125b2595cbfa8ade3c236a3c65e1e47c59cbc7a0b6aece26a9a308f9a16572f6
|
4
|
+
data.tar.gz: 48c8383401b597a1c8cf644330bfc5f65e48ffc2351225ce1a108c57a03c145a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2054c3ae794029eecf7ab9adb32024f3959d8ab56fb2f0c08908ffc27f1786498cc53f3b1a870caeabad4aeca9eff1ea762c0057fd41cef318a2c8574e1440db
|
7
|
+
data.tar.gz: 9b982a65eed4fa12e2b199a55e659c633fe0c99c3261db752b1f64a66a1275de4c0aafff24e1a59561030c33412066a20c1503dd897e0af04a83d09841563b56
|
@@ -12,10 +12,10 @@ jobs:
|
|
12
12
|
|
13
13
|
steps:
|
14
14
|
- uses: actions/checkout@v2
|
15
|
-
- name: Set up Ruby 2.
|
16
|
-
uses:
|
15
|
+
- name: Set up Ruby 2.7
|
16
|
+
uses: ruby/setup-ruby@v1
|
17
17
|
with:
|
18
|
-
ruby-version: 2.
|
18
|
+
ruby-version: 2.7
|
19
19
|
|
20
20
|
- name: Publish to RubyGems
|
21
21
|
run: |
|
@@ -7,7 +7,20 @@ jobs:
|
|
7
7
|
runs-on: ubuntu-latest
|
8
8
|
steps:
|
9
9
|
- uses: actions/checkout@v2
|
10
|
+
with:
|
11
|
+
ref: ${{ github.ref }}
|
12
|
+
- name: Cache Gems
|
13
|
+
uses: actions/cache@v1
|
14
|
+
with:
|
15
|
+
path: vendor/bundle
|
16
|
+
key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }}
|
17
|
+
restore-keys: |
|
18
|
+
${{ runner.os }}-gem-
|
19
|
+
- name: Setup ruby
|
20
|
+
uses: ruby/setup-ruby@v1
|
21
|
+
- run: |
|
22
|
+
gem install bundler
|
23
|
+
bundle config path vendor/bundle
|
24
|
+
bundle install --jobs 4 --retry 3
|
10
25
|
- name: Rubocop checks
|
11
|
-
|
12
|
-
env:
|
13
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
26
|
+
run: bundle exec rubocop
|
data/.github/workflows/ruby.yml
CHANGED
@@ -8,7 +8,7 @@ jobs:
|
|
8
8
|
runs-on: ubuntu-latest
|
9
9
|
strategy:
|
10
10
|
matrix:
|
11
|
-
ruby: [
|
11
|
+
ruby: ['2.7', '3.0']
|
12
12
|
name: Ruby ${{ matrix.ruby }} Test
|
13
13
|
steps:
|
14
14
|
- uses: actions/checkout@master
|
@@ -22,7 +22,7 @@ jobs:
|
|
22
22
|
restore-keys: |
|
23
23
|
${{ runner.os }}-gem-
|
24
24
|
- name: Setup ruby
|
25
|
-
uses:
|
25
|
+
uses: ruby/setup-ruby@v1
|
26
26
|
with:
|
27
27
|
ruby-version: ${{ matrix.ruby }}
|
28
28
|
- run: |
|
data/.rubocop.yml
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
AllCops:
|
2
|
-
TargetRubyVersion: 2.
|
2
|
+
TargetRubyVersion: 2.7
|
3
3
|
|
4
4
|
Metrics/ClassLength:
|
5
5
|
Enabled: false
|
@@ -40,9 +40,6 @@ Style/TrailingCommaInHashLiteral:
|
|
40
40
|
Style/TrailingCommaInArguments:
|
41
41
|
EnforcedStyleForMultiline: comma
|
42
42
|
|
43
|
-
Layout/ParameterAlignment:
|
44
|
-
EnforcedStyle: with_fixed_indentation
|
45
|
-
|
46
43
|
Layout/EmptyLineAfterMagicComment:
|
47
44
|
Enabled: false
|
48
45
|
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.7.7
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
## 0.6.0 (2023-05-02)
|
2
|
+
|
3
|
+
- Updating minimum Ruby version to Ruby 2.7.7
|
4
|
+
- Add test support for Ruby 3.0
|
5
|
+
- Update Faraday to 2.0.1
|
6
|
+
|
7
|
+
## 0.5.0 (2023-01-04)
|
8
|
+
|
9
|
+
- Updating minimum Ruby version to Ruby 2.6.6
|
10
|
+
|
11
|
+
## 0.4.0 (2021-05-31)
|
12
|
+
|
13
|
+
- Add `Bambora::V1::PaymentResource#get` method
|
14
|
+
|
1
15
|
## 0.3.0 (2020-05-27)
|
2
16
|
|
3
17
|
- Add `Bambora::V1::ProfileResource#update` method
|
data/bambora-client.gemspec
CHANGED
@@ -37,10 +37,11 @@ Gem::Specification.new do |spec|
|
|
37
37
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
38
38
|
spec.require_paths = ['lib']
|
39
39
|
|
40
|
-
spec.required_ruby_version = '>= 2.
|
40
|
+
spec.required_ruby_version = '>= 2.7.7'
|
41
41
|
|
42
|
-
spec.add_dependency '
|
43
|
-
spec.add_dependency 'faraday'
|
42
|
+
spec.add_dependency 'faraday', '~> 2.0.1'
|
43
|
+
spec.add_dependency 'faraday-excon'
|
44
|
+
spec.add_dependency 'faraday-multipart'
|
44
45
|
spec.add_dependency 'gyoku', '~> 1.0'
|
45
46
|
spec.add_dependency 'multiparty', '~> 0'
|
46
47
|
|
@@ -13,7 +13,7 @@ module Bambora
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def to_h
|
16
|
-
deep_transform_keys_in_object(parser.parse(response.body), &:to_sym)
|
16
|
+
deep_transform_keys_in_object(parser.parse(response.body.to_s), &:to_sym)
|
17
17
|
rescue JSON::ParserError
|
18
18
|
error_response
|
19
19
|
end
|
@@ -33,8 +33,14 @@ module Bambora
|
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
|
+
# Faraday 1.0 fixed a bug where request/response bodies were indistinguishable.
|
37
|
+
# Our tests rely on this behaviour, and perhaps upstream clients do too.
|
38
|
+
# @SEE https://github.com/lostisland/faraday/pull/847
|
36
39
|
def error_response
|
37
|
-
{
|
40
|
+
{
|
41
|
+
status: response.status,
|
42
|
+
body: response.body || response.env.request_body,
|
43
|
+
}
|
38
44
|
end
|
39
45
|
|
40
46
|
def parser
|
data/lib/bambora/rest/client.rb
CHANGED
@@ -77,6 +77,22 @@ module Bambora
|
|
77
77
|
end
|
78
78
|
|
79
79
|
alias make_payment_with_payment_profile create_with_payment_profile
|
80
|
+
|
81
|
+
# Retrieve the details of a previously attempted payment.
|
82
|
+
#
|
83
|
+
#
|
84
|
+
# @example
|
85
|
+
#
|
86
|
+
# client = Bambora::Rest::JSONClient(base_url: '...', api_key: '...', merchant_id: '...')
|
87
|
+
# payments = Bambora::V1::PaymentResource(client: client)
|
88
|
+
# payments.get(transaction_id: 1000341)
|
89
|
+
#
|
90
|
+
# @param transaction_id [Integer] An integer identifier for the associated transaction.
|
91
|
+
#
|
92
|
+
# @return [Hash] Transaction details.
|
93
|
+
def get(transaction_id:)
|
94
|
+
client.get(path: "#{sub_path}/#{transaction_id}", api_key: api_key)
|
95
|
+
end
|
80
96
|
end
|
81
97
|
end
|
82
98
|
end
|
metadata
CHANGED
@@ -1,43 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bambora-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cassidy K
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: faraday
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.0.1
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 2.0.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: faraday
|
28
|
+
name: faraday-excon
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: faraday-multipart
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: gyoku
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -243,15 +257,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
243
257
|
requirements:
|
244
258
|
- - ">="
|
245
259
|
- !ruby/object:Gem::Version
|
246
|
-
version: 2.
|
260
|
+
version: 2.7.7
|
247
261
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
248
262
|
requirements:
|
249
263
|
- - ">="
|
250
264
|
- !ruby/object:Gem::Version
|
251
265
|
version: '0'
|
252
266
|
requirements: []
|
253
|
-
|
254
|
-
rubygems_version: 2.7.6.2
|
267
|
+
rubygems_version: 3.1.6
|
255
268
|
signing_key:
|
256
269
|
specification_version: 4
|
257
270
|
summary: A thread-safe client for the Bambora/Beanstream API.
|