my_target_api 2.0.6 → 2.0.7

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
2
  SHA1:
3
- metadata.gz: 9d534ef71d8b0aa864eb79ac1fec77fdd085dad3
4
- data.tar.gz: 6b499fa889d1a6641cf2b95b9f8f421e8ac60d0c
3
+ metadata.gz: f8a2de4571899340aa8c1e6e6c099c0a6b75e7e6
4
+ data.tar.gz: f1453fac44237e86a82ff18f54d9bc1a1ca4f706
5
5
  SHA512:
6
- metadata.gz: 4a9fa61da044dec259415c7e8582c5ec35eb8d09fceb99a7f30ddaee5fc0fbfc84fd84351517f2dc54710c113a55bc81b70500f5023587178fe2ce4065e4321e
7
- data.tar.gz: 111b8db8d84a8a55ca127f9b6881809f884f646ca49d9080db0880dccefaedf434df2b3c16405557f4086de5124b7b84c4845e7295a1fb15dcfe4cb839fc384f
6
+ metadata.gz: 43618ed32e7313aa0c300391d619e448ed56102429766559f91ed0a4056587b35147fc773d4a293854a521c9f61d2fd9a0b9fbef7f41affff3b3e8b0075aa398
7
+ data.tar.gz: 9be00939ad2371270df68d053ac5d586a2dab12a09f4e1043e6c24377a4c1562bed461e1daabdfa4b4f3802e12a12f0fa0a4bc9439ff002d19c391585844bb56
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- my_target_api (2.0.6)
4
+ my_target_api (2.0.7)
5
5
  json (~> 2.0, >= 2.0.0)
6
6
  rest-client (~> 2.0, >= 2.0.0)
7
7
 
data/README.md CHANGED
@@ -99,7 +99,7 @@ def read_active_campaigns
99
99
 
100
100
  rescue MyTargetApi::RequestError => e
101
101
 
102
- puts e.message, e.params, e.response, e.backtrace
102
+ puts e.message, e.method, e.url, e.params, e.response, e.backtrace
103
103
  # You can access the original exception
104
104
  puts e.original_exception&.message, e.original_exception&.backtrace
105
105
 
@@ -14,7 +14,7 @@ class MyTargetApi
14
14
  end
15
15
 
16
16
  def get(url, params = {}, headers = {})
17
- response = with_exception_handling(params) do
17
+ response = with_exception_handling('GET', url, params) do
18
18
  NetClient.get(url, headers.merge(query(params)))
19
19
  end
20
20
 
@@ -22,7 +22,7 @@ class MyTargetApi
22
22
  end
23
23
 
24
24
  def post(url, params = {}, headers = {})
25
- response = with_exception_handling(params) do
25
+ response = with_exception_handling('POST', url, params) do
26
26
  NetClient.post(url, params, headers)
27
27
  end
28
28
 
@@ -30,7 +30,7 @@ class MyTargetApi
30
30
  end
31
31
 
32
32
  def delete(url, params = {}, headers = {})
33
- response = with_exception_handling(params) do
33
+ response = with_exception_handling('DELETE', url, params) do
34
34
  NetClient.delete(url, headers.merge(query(params)))
35
35
  end
36
36
 
@@ -38,7 +38,7 @@ class MyTargetApi
38
38
  end
39
39
 
40
40
  def upload(url, content, params = {}, headers = {})
41
- response = with_exception_handling(params) do
41
+ response = with_exception_handling('POST', 'url', params) do
42
42
  NetClient.post(
43
43
  url,
44
44
  content,
@@ -65,24 +65,27 @@ class MyTargetApi
65
65
  response.body
66
66
  end
67
67
 
68
- def with_exception_handling(params)
68
+ def with_exception_handling(method, url, params)
69
69
  response = yield
70
70
  log_response(response)
71
- raise_with_params(params: params, response: response) if response.code >= 400
71
+ if response.code >= 400
72
+ raise_with_params(method: method, url: url, params: params, response: response)
73
+ end
72
74
  response
73
75
  rescue NetClient::Exception => e
74
76
  original_exception = e.original_exception
75
77
  logger << "#{original_exception.class.name} #{original_exception.message}"
76
- raise_with_params(params: params, original_exception: original_exception)
78
+ raise_with_params(method: method, url: url, params: params,
79
+ original_exception: original_exception)
77
80
  end
78
81
 
79
82
  def log_response(response)
80
83
  logger << ResponseFormatter.new(response).format
81
84
  end
82
85
 
83
- def raise_with_params(params:, response: nil, original_exception: nil)
84
- result = MyTargetApi::RequestError.new(params: params,
85
- response: response,
86
+ def raise_with_params(method:, url:, params:, response: nil, original_exception: nil)
87
+ result = MyTargetApi::RequestError.new(method: method, url: url,
88
+ params: params, response: response,
86
89
  original_exception: original_exception)
87
90
  result.set_backtrace(caller)
88
91
  raise result
@@ -4,18 +4,16 @@ class MyTargetApi
4
4
  # Error for request
5
5
  class RequestError < StandardError
6
6
 
7
- attr_reader :params, :original_exception, :response
7
+ attr_reader :method, :url, :params, :original_exception, :response
8
8
 
9
- def initialize(params:, original_exception: nil, response: nil)
9
+ def initialize(method:, url:, params:, original_exception: nil, response: nil)
10
+ @method = method
11
+ @url = url
10
12
  @params = params
11
13
  @response = response
12
14
  @original_exception = original_exception
13
15
 
14
- message =
15
- "#{(response ? "#{response.code}: #{response.body}. " : '')}"\
16
- 'Inspect #params, #response and #original_exception for more details'
17
-
18
- super(message)
16
+ super(response ? "#{response.code}: #{response.body}" : 'No response')
19
17
  end
20
18
 
21
19
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  class MyTargetApi
4
4
 
5
- VERSION = '2.0.6'
5
+ VERSION = '2.0.7'
6
6
 
7
7
  end
@@ -84,9 +84,7 @@ describe MyTargetApi::Request do
84
84
  .to_return(body: 'Unknown resource', status: 404)
85
85
 
86
86
  expect { subject.get('https://target.my.com/api/v1/wrong_path.json') }
87
- .to raise_error(MyTargetApi::RequestError,
88
- '404: Unknown resource. Inspect #params, #response and #original_exception'\
89
- ' for more details')
87
+ .to raise_error(MyTargetApi::RequestError, '404: Unknown resource')
90
88
  end
91
89
 
92
90
  it 'sets authorization header' do
@@ -163,9 +161,7 @@ describe MyTargetApi::Request do
163
161
  )
164
162
 
165
163
  expect { request.get('https://target.my.com/api/v1/request.json') }
166
- .to raise_error(MyTargetApi::RequestError,
167
- '404: Unknown resource. Inspect #params, #response and #original_exception'\
168
- ' for more details')
164
+ .to raise_error(MyTargetApi::RequestError, '404: Unknown resource')
169
165
 
170
166
  expect(logger).to(have_received(:<<).with(<<~LOG))
171
167
  GET https://target.my.com/api/v1/request.json
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: my_target_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.6
4
+ version: 2.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - OneRetarget.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-14 00:00:00.000000000 Z
11
+ date: 2020-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json