taxjar-ruby 2.4.1 → 2.5.0
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/CHANGELOG.md +6 -1
- data/README.md +1 -1
- data/lib/taxjar/api/request.rb +8 -3
- data/lib/taxjar/client.rb +1 -0
- data/lib/taxjar/order.rb +2 -1
- data/lib/taxjar/refund.rb +2 -1
- data/lib/taxjar/version.rb +2 -2
- data/spec/fixtures/order.json +1 -0
- data/spec/fixtures/refund.json +1 -0
- data/spec/taxjar/api/order_spec.rb +24 -17
- data/spec/taxjar/api/refund_spec.rb +26 -19
- data/spec/taxjar/api/request_spec.rb +15 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1bfb85c8da4a0794eaa7fb2634d811d6e1d48d1d
|
4
|
+
data.tar.gz: 8ac52df47adcebb45a240649322bd80820d8298b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49c6eb22aa02d983f00e2fb33cdcc98b7958fda8d3d0cf2d6dc28a32098075ec8c76f1ac93d7a24354677fac3df9f4483735164e035588f904bd498a3d290b8a
|
7
|
+
data.tar.gz: 9783ad5245bb139312e63ccaa560f080e649d439daf4006c5c5e3aec854e3e174169bb383a2f204ca66f6e72ab73d3a61362ad69ea2db1c823c50e7255e6a7f3
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
7
7
|
|
8
8
|
## [Unreleased]
|
9
9
|
|
10
|
+
## [2.5.0] - 2019-06-19
|
11
|
+
- Support `provider` param for marketplace exempt transactions
|
12
|
+
- Add proxy support when instantiating client
|
13
|
+
|
10
14
|
## [2.4.1] - 2019-02-04
|
11
15
|
- Relax HTTP.rb gem version requirements
|
12
16
|
- Add RubyGems metadata
|
@@ -27,7 +31,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
|
|
27
31
|
- Update minimum required Ruby version to 2.0
|
28
32
|
- Update HTTP (The Gem) to 2.2
|
29
33
|
|
30
|
-
[Unreleased]: https://github.com/taxjar/taxjar-ruby/compare/v2.
|
34
|
+
[Unreleased]: https://github.com/taxjar/taxjar-ruby/compare/v2.5.0...HEAD
|
35
|
+
[2.5.0]: https://github.com/taxjar/taxjar-ruby/compare/v2.4.1...v2.5.0
|
31
36
|
[2.4.1]: https://github.com/taxjar/taxjar-ruby/compare/v2.4.0...v2.4.1
|
32
37
|
[2.4.0]: https://github.com/taxjar/taxjar-ruby/compare/v2.3.0...v2.4.0
|
33
38
|
[2.3.0]: https://github.com/taxjar/taxjar-ruby/compare/v2.2.0...v2.3.0
|
data/README.md
CHANGED
@@ -18,7 +18,7 @@ Installing this gem also bundles the following dependencies:
|
|
18
18
|
* [http](https://github.com/httprb/http.rb) - Fast Ruby HTTP client with a chainable API and full streaming support.
|
19
19
|
* [addressable](https://github.com/sporkmonger/addressable) - Replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to the relevant RFCs and adds support for IRIs and URI templates.
|
20
20
|
* [memoizable](https://github.com/dkubb/memoizable) - Memoize method return values.
|
21
|
-
* [model_attribute](https://github.com/yammer/model_attribute) - Type casted attributes for non-ActiveRecord models.
|
21
|
+
* [model_attribute](https://github.com/yammer/model_attribute) - Type casted attributes for non-ActiveRecord models.
|
22
22
|
|
23
23
|
## Installation
|
24
24
|
|
data/lib/taxjar/api/request.rb
CHANGED
@@ -26,15 +26,20 @@ module Taxjar
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def perform
|
29
|
-
options_key =
|
30
|
-
response =
|
31
|
-
.request(request_method, uri.to_s, options_key => @options)
|
29
|
+
options_key = [:get, :delete].include?(@request_method) ? :params : :json
|
30
|
+
response = build_http_client.request(request_method, uri.to_s, options_key => @options)
|
32
31
|
response_body = symbolize_keys!(response.parse)
|
33
32
|
fail_or_return_response_body(response.code, response_body)
|
34
33
|
end
|
35
34
|
|
36
35
|
private
|
37
36
|
|
37
|
+
def build_http_client
|
38
|
+
http_client = HTTP.timeout(@http_timeout).headers(headers)
|
39
|
+
http_client = http_client.via(*client.http_proxy) if client.http_proxy
|
40
|
+
http_client
|
41
|
+
end
|
42
|
+
|
38
43
|
def set_request_headers(custom_headers = {})
|
39
44
|
@headers = {}
|
40
45
|
@headers[:user_agent] = client.user_agent
|
data/lib/taxjar/client.rb
CHANGED
data/lib/taxjar/order.rb
CHANGED
@@ -3,10 +3,11 @@ require 'taxjar/base'
|
|
3
3
|
module Taxjar
|
4
4
|
class Order < Taxjar::Base
|
5
5
|
extend ModelAttribute
|
6
|
-
|
6
|
+
|
7
7
|
attribute :transaction_id, :string
|
8
8
|
attribute :user_id, :integer
|
9
9
|
attribute :transaction_date, :string
|
10
|
+
attribute :provider, :string
|
10
11
|
attribute :from_country, :string
|
11
12
|
attribute :from_zip, :string
|
12
13
|
attribute :from_state, :string
|
data/lib/taxjar/refund.rb
CHANGED
@@ -3,11 +3,12 @@ require 'taxjar/base'
|
|
3
3
|
module Taxjar
|
4
4
|
class Refund < Taxjar::Base
|
5
5
|
extend ModelAttribute
|
6
|
-
|
6
|
+
|
7
7
|
attribute :transaction_id, :string
|
8
8
|
attribute :user_id, :integer
|
9
9
|
attribute :transaction_date, :string
|
10
10
|
attribute :transaction_reference_id, :string
|
11
|
+
attribute :provider, :string
|
11
12
|
attribute :from_country, :string
|
12
13
|
attribute :from_zip, :string
|
13
14
|
attribute :from_state, :string
|
data/lib/taxjar/version.rb
CHANGED
data/spec/fixtures/order.json
CHANGED
data/spec/fixtures/refund.json
CHANGED
@@ -28,7 +28,7 @@ describe Taxjar::API::Order do
|
|
28
28
|
|
29
29
|
context "with parameters" do
|
30
30
|
before do
|
31
|
-
stub_get('/v2/transactions/orders?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31').
|
31
|
+
stub_get('/v2/transactions/orders?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31&provider=api').
|
32
32
|
to_return(body: fixture('orders.json'),
|
33
33
|
headers: {content_type: 'application/json; charset=utf-8'})
|
34
34
|
|
@@ -36,13 +36,15 @@ describe Taxjar::API::Order do
|
|
36
36
|
|
37
37
|
it 'requests the right resource' do
|
38
38
|
@client.list_orders(from_transaction_date: '2015/05/01',
|
39
|
-
|
40
|
-
|
39
|
+
to_transaction_date: '2015/05/31',
|
40
|
+
provider: 'api')
|
41
|
+
expect(a_get('/v2/transactions/orders?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31&provider=api')).to have_been_made
|
41
42
|
end
|
42
43
|
|
43
44
|
it 'returns the requested orders' do
|
44
45
|
orders = @client.list_orders(from_transaction_date: '2015/05/01',
|
45
|
-
to_transaction_date: '2015/05/31'
|
46
|
+
to_transaction_date: '2015/05/31',
|
47
|
+
provider: 'api')
|
46
48
|
expect(orders).to be_an Array
|
47
49
|
expect(orders.first).to be_a String
|
48
50
|
expect(orders.first).to eq('123')
|
@@ -52,22 +54,23 @@ describe Taxjar::API::Order do
|
|
52
54
|
|
53
55
|
describe "#show_order" do
|
54
56
|
before do
|
55
|
-
stub_get('/v2/transactions/orders/123').
|
57
|
+
stub_get('/v2/transactions/orders/123?provider=api').
|
56
58
|
to_return(body: fixture('order.json'),
|
57
59
|
headers: {content_type: 'application/json; charset=utf-8'})
|
58
60
|
end
|
59
61
|
|
60
62
|
it 'requests the right resource' do
|
61
|
-
@client.show_order('123')
|
62
|
-
expect(a_get('/v2/transactions/orders/123')).to have_been_made
|
63
|
+
@client.show_order('123', provider: 'api')
|
64
|
+
expect(a_get('/v2/transactions/orders/123?provider=api')).to have_been_made
|
63
65
|
end
|
64
66
|
|
65
67
|
it 'returns the requested order' do
|
66
|
-
order = @client.show_order('123')
|
68
|
+
order = @client.show_order('123', provider: 'api')
|
67
69
|
expect(order).to be_an Taxjar::Order
|
68
70
|
expect(order.transaction_id).to eq('123')
|
69
71
|
expect(order.user_id).to eq(10649)
|
70
72
|
expect(order.transaction_date).to eq('2015-05-14T00:00:00Z')
|
73
|
+
expect(order.provider).to eq('api')
|
71
74
|
expect(order.from_country).to eq('US')
|
72
75
|
expect(order.from_zip).to eq('93107')
|
73
76
|
expect(order.from_state).to eq('CA')
|
@@ -84,7 +87,7 @@ describe Taxjar::API::Order do
|
|
84
87
|
end
|
85
88
|
|
86
89
|
it 'allows access to line_items' do
|
87
|
-
order = @client.show_order('123')
|
90
|
+
order = @client.show_order('123', provider: 'api')
|
88
91
|
expect(order.line_items[0].id).to eq('1')
|
89
92
|
expect(order.line_items[0].quantity).to eq(1)
|
90
93
|
expect(order.line_items[0].product_identifier).to eq('12-34243-9')
|
@@ -103,6 +106,7 @@ describe Taxjar::API::Order do
|
|
103
106
|
|
104
107
|
@order = {:transaction_id => '123',
|
105
108
|
:transaction_date => '2015/05/14',
|
109
|
+
:provider => 'api',
|
106
110
|
:to_country => 'US',
|
107
111
|
:to_zip => '90002',
|
108
112
|
:to_city => 'Los Angeles',
|
@@ -132,6 +136,7 @@ describe Taxjar::API::Order do
|
|
132
136
|
expect(order.transaction_id).to eq('123')
|
133
137
|
expect(order.user_id).to eq(10649)
|
134
138
|
expect(order.transaction_date).to eq("2015-05-14T00:00:00Z")
|
139
|
+
expect(order.provider).to eq('api')
|
135
140
|
expect(order.from_country).to eq('US')
|
136
141
|
expect(order.from_zip).to eq('93107')
|
137
142
|
expect(order.from_state).to eq('CA')
|
@@ -146,7 +151,7 @@ describe Taxjar::API::Order do
|
|
146
151
|
expect(order.shipping).to eq(1.5)
|
147
152
|
expect(order.sales_tax).to eq(0.95)
|
148
153
|
end
|
149
|
-
|
154
|
+
|
150
155
|
it 'allows access to line_items' do
|
151
156
|
order = @client.create_order(@order)
|
152
157
|
expect(order.line_items[0].id).to eq('1')
|
@@ -191,6 +196,7 @@ describe Taxjar::API::Order do
|
|
191
196
|
expect(order.transaction_id).to eq('123')
|
192
197
|
expect(order.user_id).to eq(10649)
|
193
198
|
expect(order.transaction_date).to eq("2015-05-14T00:00:00Z")
|
199
|
+
expect(order.provider).to eq('api')
|
194
200
|
expect(order.from_country).to eq('US')
|
195
201
|
expect(order.from_zip).to eq('93107')
|
196
202
|
expect(order.from_state).to eq('CA')
|
@@ -205,7 +211,7 @@ describe Taxjar::API::Order do
|
|
205
211
|
expect(order.shipping).to eq(1.5)
|
206
212
|
expect(order.sales_tax).to eq(0.95)
|
207
213
|
end
|
208
|
-
|
214
|
+
|
209
215
|
it 'allows access to line_items' do
|
210
216
|
order = @client.update_order(@order)
|
211
217
|
expect(order.line_items[0].id).to eq('1')
|
@@ -221,22 +227,23 @@ describe Taxjar::API::Order do
|
|
221
227
|
|
222
228
|
describe "#delete_order" do
|
223
229
|
before do
|
224
|
-
stub_delete('/v2/transactions/orders/123').
|
230
|
+
stub_delete('/v2/transactions/orders/123?provider=api').
|
225
231
|
to_return(body: fixture('order.json'),
|
226
232
|
headers: {content_type: 'application/json; charset=utf-8'})
|
227
233
|
end
|
228
234
|
|
229
235
|
it 'requests the right resource' do
|
230
|
-
@client.delete_order('123')
|
231
|
-
expect(a_delete('/v2/transactions/orders/123')).to have_been_made
|
236
|
+
@client.delete_order('123', provider: 'api')
|
237
|
+
expect(a_delete('/v2/transactions/orders/123?provider=api')).to have_been_made
|
232
238
|
end
|
233
239
|
|
234
240
|
it 'returns the deleted order' do
|
235
|
-
order = @client.delete_order('123')
|
241
|
+
order = @client.delete_order('123', provider: 'api')
|
236
242
|
expect(order).to be_an Taxjar::Order
|
237
243
|
expect(order.transaction_id).to eq('123')
|
238
244
|
expect(order.user_id).to eq(10649)
|
239
245
|
expect(order.transaction_date).to eq("2015-05-14T00:00:00Z")
|
246
|
+
expect(order.provider).to eq('api')
|
240
247
|
expect(order.from_country).to eq('US')
|
241
248
|
expect(order.from_zip).to eq('93107')
|
242
249
|
expect(order.from_state).to eq('CA')
|
@@ -251,9 +258,9 @@ describe Taxjar::API::Order do
|
|
251
258
|
expect(order.shipping).to eq(1.5)
|
252
259
|
expect(order.sales_tax).to eq(0.95)
|
253
260
|
end
|
254
|
-
|
261
|
+
|
255
262
|
it 'allows access to line items' do
|
256
|
-
order = @client.delete_order('123')
|
263
|
+
order = @client.delete_order('123', provider: 'api')
|
257
264
|
expect(order.line_items[0].id).to eq('1')
|
258
265
|
expect(order.line_items[0].quantity).to eq(1)
|
259
266
|
expect(order.line_items[0].product_identifier).to eq('12-34243-9')
|
@@ -28,7 +28,7 @@ describe Taxjar::API::Refund do
|
|
28
28
|
|
29
29
|
context "with parameters" do
|
30
30
|
before do
|
31
|
-
stub_get('/v2/transactions/refunds?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31').
|
31
|
+
stub_get('/v2/transactions/refunds?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31&provider=api').
|
32
32
|
to_return(body: fixture('refunds.json'),
|
33
33
|
headers: {content_type: 'application/json; charset=utf-8'})
|
34
34
|
|
@@ -36,13 +36,15 @@ describe Taxjar::API::Refund do
|
|
36
36
|
|
37
37
|
it 'requests the right resource' do
|
38
38
|
@client.list_refunds(from_transaction_date: '2015/05/01',
|
39
|
-
|
40
|
-
|
39
|
+
to_transaction_date: '2015/05/31',
|
40
|
+
provider: 'api')
|
41
|
+
expect(a_get('/v2/transactions/refunds?from_transaction_date=2015/05/01&to_transaction_date=2015/05/31&provider=api')).to have_been_made
|
41
42
|
end
|
42
43
|
|
43
44
|
it 'returns the requested refunds' do
|
44
45
|
refunds = @client.list_refunds(from_transaction_date: '2015/05/01',
|
45
|
-
|
46
|
+
to_transaction_date: '2015/05/31',
|
47
|
+
provider: 'api')
|
46
48
|
expect(refunds).to be_an Array
|
47
49
|
expect(refunds.first).to be_a String
|
48
50
|
expect(refunds.first).to eq('321')
|
@@ -52,23 +54,24 @@ describe Taxjar::API::Refund do
|
|
52
54
|
|
53
55
|
describe "#show_refund" do
|
54
56
|
before do
|
55
|
-
stub_get('/v2/transactions/refunds/321').
|
57
|
+
stub_get('/v2/transactions/refunds/321?provider=api').
|
56
58
|
to_return(body: fixture('refund.json'),
|
57
59
|
headers: {content_type: 'application/json; charset=utf-8'})
|
58
60
|
end
|
59
61
|
|
60
62
|
it 'requests the right resource' do
|
61
|
-
@client.show_refund('321')
|
62
|
-
expect(a_get('/v2/transactions/refunds/321')).to have_been_made
|
63
|
+
@client.show_refund('321', provider: 'api')
|
64
|
+
expect(a_get('/v2/transactions/refunds/321?provider=api')).to have_been_made
|
63
65
|
end
|
64
66
|
|
65
67
|
it 'returns the requested refund' do
|
66
|
-
refund = @client.show_refund('321')
|
68
|
+
refund = @client.show_refund('321', provider: 'api')
|
67
69
|
expect(refund).to be_an Taxjar::Refund
|
68
70
|
expect(refund.transaction_id).to eq('321')
|
69
71
|
expect(refund.user_id).to eq(10649)
|
70
72
|
expect(refund.transaction_date).to eq("2015-05-14T00:00:00Z")
|
71
73
|
expect(refund.transaction_reference_id).to eq("123")
|
74
|
+
expect(refund.provider).to eql('api')
|
72
75
|
expect(refund.from_country).to eq('US')
|
73
76
|
expect(refund.from_zip).to eq('93107')
|
74
77
|
expect(refund.from_state).to eq('CA')
|
@@ -83,9 +86,9 @@ describe Taxjar::API::Refund do
|
|
83
86
|
expect(refund.shipping).to eq(1.5)
|
84
87
|
expect(refund.sales_tax).to eq(0.95)
|
85
88
|
end
|
86
|
-
|
89
|
+
|
87
90
|
it 'allows access to line_items' do
|
88
|
-
refund = @client.show_refund('321')
|
91
|
+
refund = @client.show_refund('321', provider: 'api')
|
89
92
|
expect(refund.line_items[0].id).to eq('1')
|
90
93
|
expect(refund.line_items[0].quantity).to eq(1)
|
91
94
|
expect(refund.line_items[0].product_identifier).to eq('12-34243-9')
|
@@ -105,6 +108,7 @@ describe Taxjar::API::Refund do
|
|
105
108
|
@refund = {:transaction_id => '321',
|
106
109
|
:transaction_date => '2015/05/14',
|
107
110
|
:transaction_reference_id => '123',
|
111
|
+
:provider => 'api',
|
108
112
|
:to_country => 'US',
|
109
113
|
:to_zip => '90002',
|
110
114
|
:to_state => 'CA',
|
@@ -135,6 +139,7 @@ describe Taxjar::API::Refund do
|
|
135
139
|
expect(refund.user_id).to eq(10649)
|
136
140
|
expect(refund.transaction_date).to eq("2015-05-14T00:00:00Z")
|
137
141
|
expect(refund.transaction_reference_id).to eq("123")
|
142
|
+
expect(refund.provider).to eq('api')
|
138
143
|
expect(refund.from_country).to eq('US')
|
139
144
|
expect(refund.from_zip).to eq('93107')
|
140
145
|
expect(refund.from_state).to eq('CA')
|
@@ -149,7 +154,7 @@ describe Taxjar::API::Refund do
|
|
149
154
|
expect(refund.shipping).to eq(1.5)
|
150
155
|
expect(refund.sales_tax).to eq(0.95)
|
151
156
|
end
|
152
|
-
|
157
|
+
|
153
158
|
it 'allows access to line_items' do
|
154
159
|
refund = @client.create_refund(@refund)
|
155
160
|
expect(refund.line_items[0].id).to eq('1')
|
@@ -195,6 +200,7 @@ describe Taxjar::API::Refund do
|
|
195
200
|
expect(refund.user_id).to eq(10649)
|
196
201
|
expect(refund.transaction_date).to eq("2015-05-14T00:00:00Z")
|
197
202
|
expect(refund.transaction_reference_id).to eq("123")
|
203
|
+
expect(refund.provider).to eq('api')
|
198
204
|
expect(refund.from_country).to eq('US')
|
199
205
|
expect(refund.from_zip).to eq('93107')
|
200
206
|
expect(refund.from_state).to eq('CA')
|
@@ -209,7 +215,7 @@ describe Taxjar::API::Refund do
|
|
209
215
|
expect(refund.shipping).to eq(1.5)
|
210
216
|
expect(refund.sales_tax).to eq(0.95)
|
211
217
|
end
|
212
|
-
|
218
|
+
|
213
219
|
it 'allows access to line_items' do
|
214
220
|
refund = @client.update_refund(@refund)
|
215
221
|
expect(refund.line_items[0].id).to eq('1')
|
@@ -225,23 +231,24 @@ describe Taxjar::API::Refund do
|
|
225
231
|
|
226
232
|
describe "#delete_refund" do
|
227
233
|
before do
|
228
|
-
stub_delete('/v2/transactions/refunds/321').
|
234
|
+
stub_delete('/v2/transactions/refunds/321?provider=api').
|
229
235
|
to_return(body: fixture('refund.json'),
|
230
236
|
headers: {content_type: 'application/json; charset=utf-8'})
|
231
237
|
end
|
232
238
|
|
233
239
|
it 'requests the right resource' do
|
234
|
-
@client.delete_refund('321')
|
235
|
-
expect(a_delete('/v2/transactions/refunds/321')).to have_been_made
|
240
|
+
@client.delete_refund('321', provider: 'api')
|
241
|
+
expect(a_delete('/v2/transactions/refunds/321?provider=api')).to have_been_made
|
236
242
|
end
|
237
243
|
|
238
|
-
it 'returns the
|
239
|
-
refund = @client.delete_refund('321')
|
244
|
+
it 'returns the deleted refund' do
|
245
|
+
refund = @client.delete_refund('321', provider: 'api')
|
240
246
|
expect(refund).to be_an Taxjar::Refund
|
241
247
|
expect(refund.transaction_id).to eq('321')
|
242
248
|
expect(refund.user_id).to eq(10649)
|
243
249
|
expect(refund.transaction_date).to eq("2015-05-14T00:00:00Z")
|
244
250
|
expect(refund.transaction_reference_id).to eq("123")
|
251
|
+
expect(refund.provider).to eq('api')
|
245
252
|
expect(refund.from_country).to eq('US')
|
246
253
|
expect(refund.from_zip).to eq('93107')
|
247
254
|
expect(refund.from_state).to eq('CA')
|
@@ -256,9 +263,9 @@ describe Taxjar::API::Refund do
|
|
256
263
|
expect(refund.shipping).to eq(1.5)
|
257
264
|
expect(refund.sales_tax).to eq(0.95)
|
258
265
|
end
|
259
|
-
|
266
|
+
|
260
267
|
it 'allows access to line_items' do
|
261
|
-
refund = @client.delete_refund('321')
|
268
|
+
refund = @client.delete_refund('321', provider: 'api')
|
262
269
|
expect(refund.line_items[0].id).to eq('1')
|
263
270
|
expect(refund.line_items[0].quantity).to eq(1)
|
264
271
|
expect(refund.line_items[0].product_identifier).to eq('12-34243-9')
|
@@ -119,6 +119,21 @@ describe Taxjar::API::Request do
|
|
119
119
|
Taxjar::API::Request.new(client, :get, '/api_path', 'object')
|
120
120
|
end
|
121
121
|
|
122
|
+
context 'with a proxy' do
|
123
|
+
let(:client){ Taxjar::Client.new(api_key: 'AK', http_proxy: ["127.0.0.1", 8080])}
|
124
|
+
it "runs through the proxy" do
|
125
|
+
stub_request(:get, "https://api.taxjar.com/api_path").
|
126
|
+
with(:headers => {'Authorization'=>'Bearer AK', 'Connection'=>'close',
|
127
|
+
'Host'=>'api.taxjar.com',
|
128
|
+
'User-Agent'=>"TaxjarRubyGem/#{Taxjar::Version.to_s}"}).
|
129
|
+
to_return(:status => 200, :body => '{"object": {"id": "3"}}',
|
130
|
+
:headers => {content_type: 'application/json; charset=UTF-8'})
|
131
|
+
|
132
|
+
expect(subject.perform).to eq({id: '3'})
|
133
|
+
expect(subject.send(:build_http_client).default_options.proxy).to eq({proxy_address: "127.0.0.1", proxy_port: 8080})
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
122
137
|
context 'with get' do
|
123
138
|
it 'should return a body if no errors' do
|
124
139
|
stub_request(:get, "https://api.taxjar.com/api_path").
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: taxjar-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- TaxJar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-06-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|