transferwise 0.2.3 → 0.2.4

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
- 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