simpal 0.1.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc8c9ae515061413bcdfdf60dd4a8cb0393683ec6266c2cdcc062471e9e39768
4
- data.tar.gz: c98b37a5a25403c0f360404d21f4f7edd9ac343cb861b9e2a7b91b1f61ad39bc
3
+ metadata.gz: ff9bd39a1b3bf614656ba4aa4db6bda6de2ce675e2d429d705f00737e02fa324
4
+ data.tar.gz: 3d3b24a4727dc9321d37ffb10cc502a7141e759453cf42c6c5ee13728b308994
5
5
  SHA512:
6
- metadata.gz: 2eb6cafb908711a15ae7260a759475ab7c97e1695c3ef6c884aa1c7e51261b9d2283d35c3b5597d560b8368e25eec931b311e198625f9675599a289d3f5da590
7
- data.tar.gz: 999703680296aa07aa79a57eae18732179733acfcf88c0721fb9af2c7c45ec59cf02ebad7167a265f17fdc3fe5bd53d8da489c6da4b9d63be09015b1fd1cf481
6
+ metadata.gz: 6af06ce6dbfb1b8a6151894089b00642e0f8b221edf1f04e1b8d63b041226794ffcf04cc807d5980a4cd1f605c248cde3bc7e240a5c64340541ef744ee97e9f9
7
+ data.tar.gz: fd272791debd28b4896bdb8fd1391dbdbcf8f9adc43322b9c9db81bf8675d055e53bde820b1725e3808ca75bfc639b5e24b813baa16952ca342d9629e1dfa37a
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 [Hash] An empty hash.
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.body
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.use Faraday::Response::RaiseError
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
- connection.adapter Faraday.default_adapter
61
+
62
+ connection.adapter :net_http
60
63
  end
61
64
  end
62
65
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Simpal
4
- VERSION = '0.1.3'
4
+ VERSION = '1.0.0'
5
5
  end
@@ -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.use Faraday::Request::UrlEncoded
46
- connection.use Faraday::Response::RaiseError
47
- connection.use FaradayMiddleware::ParseJson
48
- connection.request(:basic_auth, client.client_id, client.client_secret)
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` if the authorization was voided, else an exception is raised.
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
@@ -28,7 +28,7 @@ module Simpal
28
28
  # @return [Simpal::PayPalObject] An object representing the refunded payment.
29
29
  #
30
30
  def self.refund(id, params = {}, headers: {}, client: nil)
31
- resource = API::Payments::Captures.refund(id, params, headers: headers, client: client)
31
+ resource = API::Payments::Captures.capture(id, params, headers: headers, client: client)
32
32
  PayPalObject.new(resource)
33
33
  end
34
34
  end
data/lib/simpal.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'faraday'
4
- require 'faraday_middleware'
5
4
  require 'json'
6
5
  require 'singleton'
7
6
  require 'time'
data/simpal.gemspec CHANGED
@@ -27,13 +27,16 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ['lib']
29
29
 
30
- spec.add_dependency 'faraday', '~> 1.4'
31
- spec.add_dependency 'faraday_middleware', '~> 1.0'
30
+ spec.add_dependency 'faraday', '~> 2.0'
32
31
 
32
+ spec.add_development_dependency 'guard', '~> 2.18'
33
+ spec.add_development_dependency 'guard-rspec', '~> 4.7'
33
34
  spec.add_development_dependency 'pry', '~> 0.14.1'
34
35
  spec.add_development_dependency 'rake', '~> 13.0'
35
36
  spec.add_development_dependency 'rspec', '~> 3.0'
36
37
  spec.add_development_dependency 'rubocop', '~> 1.7'
37
38
  spec.add_development_dependency 'rubocop-rake', '~> 0.5.1'
38
39
  spec.add_development_dependency 'rubocop-rspec', '~> 2.3'
40
+ spec.add_development_dependency 'sinatra', '~> 2.1'
41
+ spec.add_development_dependency 'webmock', '~> 3.14'
39
42
  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.1.3
4
+ version: 1.0.0
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-03-14 00:00:00.000000000 Z
11
+ date: 2022-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,28 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.4'
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: '1.4'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: faraday_middleware
28
+ name: guard
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.0'
34
- type: :runtime
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: '1.0'
54
+ version: '4.7'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: pry
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +136,34 @@ dependencies:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
138
  version: '2.3'
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.1'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '2.1'
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'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::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