transferwise 0.2.3 → 0.2.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 71ffc80924cd2ce031c7d425fef53cd15bbd37b6
4
- data.tar.gz: c4671ff7788a751a6e0d4f4bc66b2426277a196a
2
+ SHA256:
3
+ metadata.gz: 2d0a6e29f9ad21db15765fadccd1d98e35d656fb4b765477741ec9c6b780abde
4
+ data.tar.gz: a08a3919d79ccb6841b6094d65afac3dee606202612403c66cba01f4cadb3918
5
5
  SHA512:
6
- metadata.gz: c61b9b71597a14fe8fbd2f690d3efbc942f4400956339a8d887b0ff28aa37a7042a0c09226500853481fe97787681245896ba98cc0ae0b0e87b45b431c5a268f
7
- data.tar.gz: 4f74c742ce7ed4b2ef625ad35fa72d0931af674c74130112caa08b87b2b5a905da956251fa0b1ee292034de4d56ddda0bff156f1a6887192d7a6881c01238b22
6
+ metadata.gz: 20fee89c8d95c9524f7336427fcd1ec544405901b27b90d0b3b3e1533476942dd4c1caf29c57cba131695b643f719ee1dcade958175c8b2058171c369b5c2292
7
+ data.tar.gz: 6fcd46315d3fe5ebe74c5f96e7e4fd9798276d9efd3be8b8c964f904cdc30b0266bb556885c982b47aa5edcfd4cb8301024c55ec04a18efed6810935a1bcdb5b
@@ -10,6 +10,11 @@ require "transferwise/version"
10
10
  # Oauth2 Authentication
11
11
  require "transferwise/oauth"
12
12
 
13
+ # ActiveSupport extensions
14
+ require 'active_support/core_ext/hash/indifferent_access'
15
+ require 'active_support/core_ext/object/blank'
16
+ require 'active_support/core_ext/string/inflections'
17
+
13
18
  # Resources
14
19
  require 'transferwise/transferwise_object'
15
20
  require 'transferwise/api_resource'
@@ -10,14 +10,20 @@ module Transferwise
10
10
  request_opts = {
11
11
  url: url,
12
12
  method: method,
13
- payload: params.to_json,
14
13
  headers: request_headers(access_token).update(headers)
15
14
  }
15
+
16
+ if method == :get
17
+ request_opts[:headers].update(params: params)
18
+ else
19
+ request_opts.update(payload: params.to_json)
20
+ end
21
+
16
22
  response = execute_request(request_opts)
17
23
  parse(response)
18
24
  end
19
25
 
20
- private
26
+ # Private class methods
21
27
 
22
28
  def self.request_headers(access_token)
23
29
  {
@@ -25,6 +31,7 @@ module Transferwise
25
31
  'Content-Type' => 'application/json'
26
32
  }
27
33
  end
34
+ private_class_method :request_headers
28
35
 
29
36
  def self.execute_request(request_opts)
30
37
  begin
@@ -38,6 +45,7 @@ module Transferwise
38
45
  end
39
46
  response
40
47
  end
48
+ private_class_method :execute_request
41
49
 
42
50
  def self.parse(response)
43
51
  begin
@@ -47,6 +55,7 @@ module Transferwise
47
55
  end
48
56
  response
49
57
  end
58
+ private_class_method :parse
50
59
 
51
60
  def self.handle_error(e, request_opts)
52
61
  if e.is_a?(RestClient::ExceptionWithResponse) && e.response
@@ -55,6 +64,7 @@ module Transferwise
55
64
  handle_restclient_error(e, request_opts)
56
65
  end
57
66
  end
67
+ private_class_method :handle_error
58
68
 
59
69
  def self.handle_api_error(resp)
60
70
  error_obj = parse(resp).with_indifferent_access
@@ -65,6 +75,7 @@ module Transferwise
65
75
  raise Transferwise::TransferwiseError.new(error_params(error_message, resp, error_obj))
66
76
  end
67
77
  end
78
+ private_class_method :handle_api_error
68
79
 
69
80
  def self.handle_restclient_error(e, request_opts)
70
81
  connection_message = "Please check your internet connection and try again. "
@@ -81,6 +92,7 @@ module Transferwise
81
92
 
82
93
  raise Transferwise::APIConnectionError.new({message: "#{message} \n\n (Error: #{e.message})"})
83
94
  end
95
+ private_class_method :handle_restclient_error
84
96
 
85
97
  def self.handle_parse_error(rcode, rbody)
86
98
  Transferwise::ParseError.new({
@@ -89,6 +101,7 @@ module Transferwise
89
101
  http_body: rbody
90
102
  })
91
103
  end
104
+ private_class_method :handle_parse_error
92
105
 
93
106
  def self.error_params(error, resp, error_obj)
94
107
  {
@@ -99,5 +112,6 @@ module Transferwise
99
112
  http_headers: resp.headers
100
113
  }
101
114
  end
115
+ private_class_method :error_params
102
116
  end
103
117
  end
@@ -1,3 +1,3 @@
1
1
  module Transferwise
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
@@ -27,9 +27,11 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.add_runtime_dependency('rest-client', '>= 1.4', '< 4.0')
31
- spec.add_runtime_dependency("oauth2".freeze, ["< 2.0", ">= 1.4.0"])
30
+ spec.add_runtime_dependency "activesupport", ">= 3.0.0", "< 6.0"
31
+ spec.add_runtime_dependency "oauth2", ">= 1.4.0", "< 2.0"
32
+ spec.add_runtime_dependency "rest-client", ">= 1.4", "< 4.0"
32
33
  spec.add_development_dependency "bundler", "~> 1.11"
33
34
  spec.add_development_dependency "rake", "~> 10.0"
34
35
  spec.add_development_dependency "rspec", "~> 3.0"
36
+ spec.add_development_dependency "webmock", "~> 3.0"
35
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: transferwise
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harshvardhan Parihar
@@ -9,48 +9,68 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2018-01-29 00:00:00.000000000 Z
12
+ date: 2018-06-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rest-client
15
+ name: activesupport
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '1.4'
20
+ version: 3.0.0
21
21
  - - "<"
22
22
  - !ruby/object:Gem::Version
23
- version: '4.0'
23
+ version: '6.0'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
28
  - - ">="
29
29
  - !ruby/object:Gem::Version
30
- version: '1.4'
30
+ version: 3.0.0
31
31
  - - "<"
32
32
  - !ruby/object:Gem::Version
33
- version: '4.0'
33
+ version: '6.0'
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: oauth2
36
36
  requirement: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "<"
39
- - !ruby/object:Gem::Version
40
- version: '2.0'
41
38
  - - ">="
42
39
  - !ruby/object:Gem::Version
43
40
  version: 1.4.0
41
+ - - "<"
42
+ - !ruby/object:Gem::Version
43
+ version: '2.0'
44
44
  type: :runtime
45
45
  prerelease: false
46
46
  version_requirements: !ruby/object:Gem::Requirement
47
47
  requirements:
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 1.4.0
48
51
  - - "<"
49
52
  - !ruby/object:Gem::Version
50
53
  version: '2.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: rest-client
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
51
58
  - - ">="
52
59
  - !ruby/object:Gem::Version
53
- version: 1.4.0
60
+ version: '1.4'
61
+ - - "<"
62
+ - !ruby/object:Gem::Version
63
+ version: '4.0'
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '1.4'
71
+ - - "<"
72
+ - !ruby/object:Gem::Version
73
+ version: '4.0'
54
74
  - !ruby/object:Gem::Dependency
55
75
  name: bundler
56
76
  requirement: !ruby/object:Gem::Requirement
@@ -93,6 +113,20 @@ dependencies:
93
113
  - - "~>"
94
114
  - !ruby/object:Gem::Version
95
115
  version: '3.0'
116
+ - !ruby/object:Gem::Dependency
117
+ name: webmock
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '3.0'
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '3.0'
96
130
  description: Ruby gem for Transferwise Apis
97
131
  email:
98
132
  - harsh@milaap.org
@@ -149,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
183
  version: '0'
150
184
  requirements: []
151
185
  rubyforge_project:
152
- rubygems_version: 2.6.14
186
+ rubygems_version: 2.7.3
153
187
  signing_key:
154
188
  specification_version: 4
155
189
  summary: Ruby gem for Transferwise Apis