simpal 0.1.3 → 1.0.2
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/workflows/ruby.yml +32 -36
- data/.rspec +1 -0
- data/.rubocop.yml +10 -3
- data/Guardfile +17 -0
- data/lib/simpal/api/payments/authorizations.rb +2 -2
- data/lib/simpal/client.rb +7 -4
- data/lib/simpal/constants.rb +1 -1
- data/lib/simpal/middleware/authorization.rb +6 -4
- data/lib/simpal/payment/authorization.rb +1 -2
- data/lib/simpal.rb +0 -1
- data/simpal.gemspec +11 -7
- metadata +63 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da8d90b4b7d128563272f45a94b547cbd74e8529c40895a024b492e1137aa03e
|
4
|
+
data.tar.gz: 0ad90fffe64cd5cad8e9a06a344e31dfd7b8436e438712e6ec8ca3e120b028cc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 679cabc6fd8e5562ad682b715345ef3a468c0a30c6c2513b984a813bf9d5edd8420d58154e173b05b0ea10589891b9f534470690a2c74fe5f5e4022ddf5eed56
|
7
|
+
data.tar.gz: 48f700c2391ca1a281bf5fc7323786b5e75fd76686b95e1df67c59b3e21c191d980b9564de441bcf7c5e5bbe7489065e3dbc33530a4628576fea42c696903107
|
data/.github/workflows/ruby.yml
CHANGED
@@ -1,31 +1,29 @@
|
|
1
1
|
name: Ruby
|
2
2
|
|
3
3
|
on:
|
4
|
+
workflow_dispatch:
|
4
5
|
push:
|
5
|
-
branches: [main]
|
6
|
-
pull_request:
|
7
|
-
branches: [main]
|
8
6
|
|
9
7
|
jobs:
|
10
8
|
rubocop:
|
11
9
|
name: RuboCop
|
12
10
|
runs-on: ubuntu-latest
|
13
11
|
steps:
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
12
|
+
- uses: actions/checkout@v2
|
13
|
+
name: Checkout Source Code
|
14
|
+
- uses: ruby/setup-ruby@v1
|
15
|
+
name: Setup Ruby
|
16
|
+
with:
|
17
|
+
ruby-version: 3.0
|
18
|
+
bundler-cache: true
|
19
|
+
- name: RuboCop
|
20
|
+
run: bundle exec rubocop --parallel --fail-level warning --format progress --format html --out rubocop-report.html
|
21
|
+
- uses: actions/upload-artifact@v1
|
22
|
+
name: Upload Report
|
23
|
+
if: always()
|
24
|
+
with:
|
25
|
+
name: RuboCop Report
|
26
|
+
path: rubocop-report.html
|
29
27
|
|
30
28
|
rspec:
|
31
29
|
name: RSpec
|
@@ -36,29 +34,27 @@ jobs:
|
|
36
34
|
- macos-latest
|
37
35
|
- ubuntu-latest
|
38
36
|
ruby-version:
|
39
|
-
- '2.5'
|
40
37
|
- '2.6'
|
41
38
|
- '2.7'
|
42
39
|
- '3.0'
|
40
|
+
- '3.1'
|
43
41
|
- head
|
44
42
|
- jruby
|
45
|
-
- jruby-head
|
46
43
|
- truffleruby
|
47
|
-
- truffleruby-head
|
48
44
|
runs-on: ${{ matrix.platform }}
|
49
45
|
steps:
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
46
|
+
- uses: actions/checkout@v2
|
47
|
+
name: Checkout Source Code
|
48
|
+
- uses: ruby/setup-ruby@v1
|
49
|
+
name: Setup Ruby
|
50
|
+
with:
|
51
|
+
ruby-version: ${{ matrix.ruby-version }}
|
52
|
+
bundler-cache: true
|
53
|
+
- name: RSpec
|
54
|
+
run: bundle exec rspec --format progress --format html --out rspec-report.html
|
55
|
+
- uses: actions/upload-artifact@v1
|
56
|
+
name: Upload Report
|
57
|
+
if: always()
|
58
|
+
with:
|
59
|
+
name: RSpec Report
|
60
|
+
path: rspec-report.html
|
data/.rspec
CHANGED
data/.rubocop.yml
CHANGED
@@ -11,8 +11,18 @@ Layout/LineLength:
|
|
11
11
|
|
12
12
|
Metrics/BlockLength:
|
13
13
|
Exclude:
|
14
|
+
- '**/*.gemspec'
|
14
15
|
- 'spec/**/*'
|
15
16
|
|
17
|
+
Metrics/ClassLength:
|
18
|
+
Exclude:
|
19
|
+
- 'spec/support/fake_*.rb'
|
20
|
+
|
21
|
+
Metrics/MethodLength:
|
22
|
+
Max: 40
|
23
|
+
Exclude:
|
24
|
+
- 'spec/support/fake_*.rb'
|
25
|
+
|
16
26
|
Metrics/AbcSize:
|
17
27
|
Max: 40
|
18
28
|
|
@@ -22,8 +32,5 @@ Metrics/CyclomaticComplexity:
|
|
22
32
|
Metrics/PerceivedComplexity:
|
23
33
|
Max: 20
|
24
34
|
|
25
|
-
Metrics/MethodLength:
|
26
|
-
Max: 40
|
27
|
-
|
28
35
|
Naming/VariableNumber:
|
29
36
|
EnforcedStyle: snake_case
|
data/Guardfile
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
guard :rspec, cmd: 'bundle exec rspec' do
|
4
|
+
require 'guard/rspec/dsl'
|
5
|
+
|
6
|
+
dsl = Guard::RSpec::Dsl.new(self)
|
7
|
+
|
8
|
+
# RSpec files
|
9
|
+
rspec = dsl.rspec
|
10
|
+
watch(rspec.spec_files)
|
11
|
+
watch(rspec.spec_helper) { rspec.spec_dir }
|
12
|
+
watch(rspec.spec_support) { rspec.spec_dir }
|
13
|
+
|
14
|
+
# Ruby library files
|
15
|
+
ruby = dsl.ruby
|
16
|
+
dsl.watch_spec_files_for(ruby.lib_files)
|
17
|
+
end
|
@@ -54,12 +54,12 @@ module Simpal
|
|
54
54
|
# @param id [String] The ID of an authorized payment.
|
55
55
|
# @param headers [Hash] The custom headers to add to the request.
|
56
56
|
# @param client [Simpal::Client] The API client to make the request with.
|
57
|
-
# @return [
|
57
|
+
# @return [Boolean] `true` when the authorization has been voided, `false` otherwise.
|
58
58
|
#
|
59
59
|
def self.void(id, headers: {}, client: nil)
|
60
60
|
client = Simpal.client_for(client)
|
61
61
|
response = client.connection.post("/v2/payments/authorizations/#{id}/void", nil, headers)
|
62
|
-
response.
|
62
|
+
response.success?
|
63
63
|
end
|
64
64
|
end
|
65
65
|
end
|
data/lib/simpal/client.rb
CHANGED
@@ -51,12 +51,15 @@ module Simpal
|
|
51
51
|
#
|
52
52
|
def connection
|
53
53
|
@connection ||= Faraday.new(service_url, headers: headers) do |connection|
|
54
|
-
connection.
|
54
|
+
connection.request :json
|
55
|
+
|
56
|
+
connection.response :raise_error
|
57
|
+
connection.response :json
|
58
|
+
|
55
59
|
connection.use Simpal::Middleware::Headers
|
56
|
-
connection.use FaradayMiddleware::EncodeJson
|
57
|
-
connection.use FaradayMiddleware::ParseJson
|
58
60
|
connection.use Simpal::Middleware::Authorization, self
|
59
|
-
|
61
|
+
|
62
|
+
connection.adapter :net_http
|
60
63
|
end
|
61
64
|
end
|
62
65
|
end
|
data/lib/simpal/constants.rb
CHANGED
@@ -42,10 +42,12 @@ module Simpal
|
|
42
42
|
|
43
43
|
def connection
|
44
44
|
@connection ||= Faraday.new(client.service_url, headers: client.headers) do |connection|
|
45
|
-
connection.
|
46
|
-
|
47
|
-
connection.
|
48
|
-
connection.
|
45
|
+
connection.request :url_encoded
|
46
|
+
|
47
|
+
connection.response :raise_error
|
48
|
+
connection.response :json
|
49
|
+
|
50
|
+
connection.request :authorization, :basic, client.client_id, client.client_secret
|
49
51
|
end
|
50
52
|
end
|
51
53
|
|
@@ -50,11 +50,10 @@ module Simpal
|
|
50
50
|
# @param id [String] The ID of an authorized payment.
|
51
51
|
# @param headers [Hash] The custom headers to add to the request.
|
52
52
|
# @param client [Simpal::Client] The API client to make the request with.
|
53
|
-
# @return [Boolean] `true`
|
53
|
+
# @return [Boolean] `true` when the authorization has been voided, `false` otherwise.
|
54
54
|
#
|
55
55
|
def self.void(id, headers: {}, client: nil)
|
56
56
|
API::Payments::Authorizations.void(id, headers: headers, client: client)
|
57
|
-
true
|
58
57
|
end
|
59
58
|
end
|
60
59
|
end
|
data/lib/simpal.rb
CHANGED
data/simpal.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.metadata['homepage_uri'] = spec.homepage
|
17
17
|
spec.metadata['source_code_uri'] = 'https://github.com/nialtoservices/simpal'
|
18
18
|
spec.metadata['changelog_uri'] = 'https://github.com/NialtoServices/simpal/blob/main/CHANGELOG.md'
|
19
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
19
20
|
|
20
21
|
# Specify which files should be added to the gem when it is released.
|
21
22
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
@@ -27,13 +28,16 @@ Gem::Specification.new do |spec|
|
|
27
28
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
28
29
|
spec.require_paths = ['lib']
|
29
30
|
|
30
|
-
spec.add_dependency 'faraday', '~>
|
31
|
-
spec.add_dependency 'faraday_middleware', '~> 1.0'
|
31
|
+
spec.add_dependency 'faraday', '~> 2.0'
|
32
32
|
|
33
|
-
spec.add_development_dependency '
|
33
|
+
spec.add_development_dependency 'guard', '~> 2.18'
|
34
|
+
spec.add_development_dependency 'guard-rspec', '~> 4.7'
|
35
|
+
spec.add_development_dependency 'pry', '~> 0.14'
|
34
36
|
spec.add_development_dependency 'rake', '~> 13.0'
|
35
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
36
|
-
spec.add_development_dependency 'rubocop', '~> 1.
|
37
|
-
spec.add_development_dependency 'rubocop-rake', '~> 0.
|
38
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.
|
37
|
+
spec.add_development_dependency 'rspec', '~> 3.11'
|
38
|
+
spec.add_development_dependency 'rubocop', '~> 1.32'
|
39
|
+
spec.add_development_dependency 'rubocop-rake', '~> 0.6'
|
40
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 2.12'
|
41
|
+
spec.add_development_dependency 'sinatra', '~> 2.2'
|
42
|
+
spec.add_development_dependency 'webmock', '~> 3.14'
|
39
43
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simpal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nialto Services
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -16,42 +16,56 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '2.0'
|
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'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: guard
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
34
|
-
type: :
|
33
|
+
version: '2.18'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.18'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: guard-rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '4.7'
|
48
|
+
type: :development
|
35
49
|
prerelease: false
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - "~>"
|
39
53
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
54
|
+
version: '4.7'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: pry
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - "~>"
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.14
|
61
|
+
version: '0.14'
|
48
62
|
type: :development
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
66
|
- - "~>"
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.14
|
68
|
+
version: '0.14'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: rake
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,56 +86,84 @@ dependencies:
|
|
72
86
|
requirements:
|
73
87
|
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version: '3.
|
89
|
+
version: '3.11'
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '3.
|
96
|
+
version: '3.11'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rubocop
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
101
|
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version: '1.
|
103
|
+
version: '1.32'
|
90
104
|
type: :development
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version: '1.
|
110
|
+
version: '1.32'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: rubocop-rake
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
115
|
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version: 0.
|
117
|
+
version: '0.6'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
122
|
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
|
-
version: 0.
|
124
|
+
version: '0.6'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: rubocop-rspec
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
129
|
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version: '2.
|
131
|
+
version: '2.12'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '2.12'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: sinatra
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '2.2'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '2.2'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: webmock
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '3.14'
|
118
160
|
type: :development
|
119
161
|
prerelease: false
|
120
162
|
version_requirements: !ruby/object:Gem::Requirement
|
121
163
|
requirements:
|
122
164
|
- - "~>"
|
123
165
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
166
|
+
version: '3.14'
|
125
167
|
description:
|
126
168
|
email:
|
127
169
|
- support@nialtoservices.co.uk
|
@@ -136,6 +178,7 @@ files:
|
|
136
178
|
- CHANGELOG.md
|
137
179
|
- CODE_OF_CONDUCT.md
|
138
180
|
- Gemfile
|
181
|
+
- Guardfile
|
139
182
|
- LICENSE
|
140
183
|
- README.md
|
141
184
|
- Rakefile
|
@@ -164,6 +207,7 @@ metadata:
|
|
164
207
|
homepage_uri: https://github.com/nialtoservices/simpal
|
165
208
|
source_code_uri: https://github.com/nialtoservices/simpal
|
166
209
|
changelog_uri: https://github.com/NialtoServices/simpal/blob/main/CHANGELOG.md
|
210
|
+
rubygems_mfa_required: 'true'
|
167
211
|
post_install_message:
|
168
212
|
rdoc_options: []
|
169
213
|
require_paths:
|
@@ -179,7 +223,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
179
223
|
- !ruby/object:Gem::Version
|
180
224
|
version: '0'
|
181
225
|
requirements: []
|
182
|
-
rubygems_version: 3.
|
226
|
+
rubygems_version: 3.3.7
|
183
227
|
signing_key:
|
184
228
|
specification_version: 4
|
185
229
|
summary: A simple, lightweight wrapper around PayPal's REST API.
|