money-openexchangerates-bank 0.1.1 → 0.1.2

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: ccb69fda728c842e6a9884dfd4927e8a27a134b6
4
- data.tar.gz: 736994fafc3e04d7ec7788d1644ef1f8de6f137a
2
+ SHA256:
3
+ metadata.gz: 16a3dbd841e49f62e93f4852aeddd725e57de2e9937421d9593790d5347bfffe
4
+ data.tar.gz: f400ea59ee1d8ae6b65b5e704b739ec7551897174410ecfbece20da06d4e0bd6
5
5
  SHA512:
6
- metadata.gz: 84c2056a0e7d462657e5f632503b300bf31457c03fb40673d3725036b217fbb8f56b47b07606dcfaf7349c0cb3eedd21ff13982099d2833985291413863c1914
7
- data.tar.gz: a0e429c1e7122522e74d106ff9788e199946de751619c2b886ee8b1248feff96642406734cb3c300958ace6b1bda68c47fa651bccdc9a49b672b5107e3d215c1
6
+ metadata.gz: da444777a24ae70cf8b9099deb0ae987544bd92fe1609f94901c600598464f6647fb2576ef5acdb9d124427dc027d2b4be839ed5835ae773c82a76273fef111c
7
+ data.tar.gz: e8e960098d58ac54741000b883adcf112412b20ccbb30ac1ea6a7eca16be862afe6ff4a7564da440e111e9cc3ef09a5a27e0d4974f4314b1efe1f1cca2d94ac6
@@ -266,7 +266,7 @@ class Money
266
266
  # Opens an url and reads the content
267
267
  # @return [String] unparsed JSON content
268
268
  def open_url
269
- open(source_url).read
269
+ URI.open(source_url).read
270
270
  rescue OpenURI::HTTPError
271
271
  ''
272
272
  end
@@ -30,12 +30,12 @@ describe Money::Bank::OpenexchangeratesBank do
30
30
  describe 'without rates' do
31
31
  it 'able to exchange a money to its own currency even without rates' do
32
32
  money = Money.new(0, 'USD')
33
- subject.exchange_with(money, 'USD').must_equal money
33
+ _(subject.exchange_with(money, 'USD')).must_equal money
34
34
  end
35
35
 
36
36
  it "raise if it can't find an exchange rate" do
37
37
  money = Money.new(0, 'USD')
38
- proc { subject.exchange_with(money, 'LTL') }
38
+ _(proc { subject.exchange_with(money, 'LTL') })
39
39
  .must_raise Money::Bank::UnknownRate
40
40
  end
41
41
  end
@@ -47,17 +47,17 @@ describe Money::Bank::OpenexchangeratesBank do
47
47
 
48
48
  it 'should be able to exchange money from USD to a known exchange rate' do
49
49
  money = Money.new(100, 'USD')
50
- subject.exchange_with(money, 'BBD').must_equal Money.new(200, 'BBD')
50
+ _(subject.exchange_with(money, 'BBD')).must_equal Money.new(200, 'BBD')
51
51
  end
52
52
 
53
53
  it 'should be able to exchange money from a known exchange rate to USD' do
54
54
  money = Money.new(200, 'BBD')
55
- subject.exchange_with(money, 'USD').must_equal Money.new(100, 'USD')
55
+ _(subject.exchange_with(money, 'USD')).must_equal Money.new(100, 'USD')
56
56
  end
57
57
 
58
58
  it "should raise if it can't find an exchange rate" do
59
59
  money = Money.new(0, 'USD')
60
- proc { subject.exchange_with(money, 'LTL') }
60
+ _(proc { subject.exchange_with(money, 'LTL') })
61
61
  .must_raise Money::Bank::UnknownRate
62
62
  end
63
63
  end
@@ -87,21 +87,21 @@ describe Money::Bank::OpenexchangeratesBank do
87
87
  initial_size = File.read(temp_cache_path).size
88
88
  stub(subject).open_url { '' }
89
89
  subject.update_rates
90
- File.read(temp_cache_path).size.must_equal initial_size
90
+ _(File.read(temp_cache_path).size).must_equal initial_size
91
91
  end
92
92
 
93
93
  it 'should not break an existing file if save returns json without rates' do
94
94
  initial_size = File.read(temp_cache_path).size
95
95
  stub(subject).open_url { '{ "error": "An error" }' }
96
96
  subject.update_rates
97
- File.read(temp_cache_path).size.must_equal initial_size
97
+ _(File.read(temp_cache_path).size).must_equal initial_size
98
98
  end
99
99
 
100
100
  it 'should not break an existing file if save returns a invalid json' do
101
101
  initial_size = File.read(temp_cache_path).size
102
102
  stub(subject).open_url { '{ invalid_json: "An error" }' }
103
103
  subject.update_rates
104
- File.read(temp_cache_path).size.must_equal initial_size
104
+ _(File.read(temp_cache_path).size).must_equal initial_size
105
105
  end
106
106
  end
107
107
 
@@ -114,7 +114,7 @@ describe Money::Bank::OpenexchangeratesBank do
114
114
 
115
115
  it 'should get from url' do
116
116
  subject.update_rates
117
- subject.rates.wont_be_empty
117
+ _(subject.rates).wont_be_empty
118
118
  end
119
119
  end
120
120
 
@@ -126,7 +126,7 @@ describe Money::Bank::OpenexchangeratesBank do
126
126
  end
127
127
 
128
128
  it 'should raise an error if invalid path is given' do
129
- proc { subject.update_rates }.must_raise Money::Bank::InvalidCache
129
+ _(proc { subject.update_rates }).must_raise Money::Bank::InvalidCache
130
130
  end
131
131
  end
132
132
 
@@ -146,16 +146,16 @@ describe Money::Bank::OpenexchangeratesBank do
146
146
  it 'should get from url normally' do
147
147
  stub(subject).source_url { data_path }
148
148
  subject.update_rates
149
- subject.rates.wont_be_empty
149
+ _(subject.rates).wont_be_empty
150
150
  end
151
151
 
152
152
  it 'should save from url and get from cache' do
153
153
  stub(subject).source_url { data_path }
154
154
  subject.update_rates
155
- @global_rates.wont_be_empty
155
+ _(@global_rates).wont_be_empty
156
156
  dont_allow(subject).source_url
157
157
  subject.update_rates
158
- subject.rates.wont_be_empty
158
+ _(subject.rates).wont_be_empty
159
159
  end
160
160
  end
161
161
 
@@ -163,7 +163,7 @@ describe Money::Bank::OpenexchangeratesBank do
163
163
  it "should use the non-secure http url if secure_connection isn't set" do
164
164
  subject.secure_connection = nil
165
165
  subject.access_key = TEST_ACCESS_KEY
166
- subject.source_url.must_equal "#{url}?base=#{source}&"\
166
+ _(subject.source_url).must_equal "#{url}?base=#{source}&"\
167
167
  "app_id=#{TEST_ACCESS_KEY}&"\
168
168
  'prettyprint=0'
169
169
  end
@@ -171,7 +171,7 @@ describe Money::Bank::OpenexchangeratesBank do
171
171
  it 'should use the non-secure http url if secure_connection is false' do
172
172
  subject.secure_connection = false
173
173
  subject.access_key = TEST_ACCESS_KEY
174
- subject.source_url.must_equal "#{url}?base=#{source}&"\
174
+ _(subject.source_url).must_equal "#{url}?base=#{source}&"\
175
175
  "app_id=#{TEST_ACCESS_KEY}&"\
176
176
  'prettyprint=0'
177
177
  end
@@ -179,10 +179,10 @@ describe Money::Bank::OpenexchangeratesBank do
179
179
  it 'should use the secure https url if secure_connection is set to true' do
180
180
  subject.secure_connection = true
181
181
  subject.access_key = TEST_ACCESS_KEY
182
- subject.source_url.must_equal "#{secure_url}?base=#{source}&"\
182
+ _(subject.source_url).must_equal "#{secure_url}?base=#{source}&"\
183
183
  "app_id=#{TEST_ACCESS_KEY}&"\
184
184
  'prettyprint=0'
185
- subject.source_url.must_include 'https://'
185
+ _(subject.source_url).must_include 'https://'
186
186
  end
187
187
  end
188
188
 
@@ -197,7 +197,7 @@ describe Money::Bank::OpenexchangeratesBank do
197
197
  it 'should update itself with exchange rates from OpenexchangeratesBank' do
198
198
  subject.rates.keys.each do |currency|
199
199
  next unless Money::Currency.find(currency)
200
- subject.get_rate('USD', currency).must_be :>, 0
200
+ _(subject.get_rate('USD', currency)).must_be :>, 0
201
201
  end
202
202
  end
203
203
 
@@ -217,7 +217,7 @@ describe Money::Bank::OpenexchangeratesBank do
217
217
  subject.add_rate('USD', 'WTF', 2)
218
218
  subject.add_rate('WTF', 'USD', 2)
219
219
  subject.exchange_with(5000.to_money('WTF'), 'USD').cents
220
- subject.exchange_with(5000.to_money('WTF'), 'USD').cents.wont_equal 0
220
+ _(subject.exchange_with(5000.to_money('WTF'), 'USD').cents).wont_equal 0
221
221
  end
222
222
  end
223
223
  end
@@ -229,7 +229,7 @@ describe Money::Bank::OpenexchangeratesBank do
229
229
  end
230
230
 
231
231
  it 'should raise an error if no access key is set' do
232
- proc { subject.update_rates }.must_raise Money::Bank::NoAccessKey
232
+ _(proc { subject.update_rates }).must_raise Money::Bank::NoAccessKey
233
233
  end
234
234
  end
235
235
 
@@ -253,11 +253,11 @@ describe Money::Bank::OpenexchangeratesBank do
253
253
  describe 'when the ttl has expired' do
254
254
  it 'should update the rates' do
255
255
  Timecop.freeze(subject.rates_timestamp + 1000) do
256
- subject.get_rate('USD', 'EUR').must_equal @old_usd_eur_rate
256
+ _(subject.get_rate('USD', 'EUR')).must_equal @old_usd_eur_rate
257
257
  end
258
258
  Timecop.freeze(subject.rates_timestamp + 1001) do
259
- subject.get_rate('USD', 'EUR').wont_equal @old_usd_eur_rate
260
- subject.get_rate('USD', 'EUR').must_equal @new_usd_eur_rate
259
+ _(subject.get_rate('USD', 'EUR')).wont_equal @old_usd_eur_rate
260
+ _(subject.get_rate('USD', 'EUR')).must_equal @new_usd_eur_rate
261
261
  end
262
262
  end
263
263
 
@@ -265,7 +265,7 @@ describe Money::Bank::OpenexchangeratesBank do
265
265
  Timecop.freeze(subject.rates_timestamp + 1001) do
266
266
  exp_time = subject.rates_timestamp + 1000
267
267
  subject.expire_rates!
268
- subject.rates_expiration.must_equal exp_time
268
+ _(subject.rates_expiration).must_equal exp_time
269
269
  end
270
270
  end
271
271
  end
@@ -275,7 +275,7 @@ describe Money::Bank::OpenexchangeratesBank do
275
275
  subject.update_rates
276
276
  exp_time = subject.rates_expiration
277
277
  subject.expire_rates!
278
- subject.rates_expiration.must_equal exp_time
278
+ _(subject.rates_expiration).must_equal exp_time
279
279
  end
280
280
  end
281
281
  end
@@ -294,12 +294,12 @@ describe Money::Bank::OpenexchangeratesBank do
294
294
  it 'should return 1970-01-01 datetime if no rates' do
295
295
  stub(subject).open_url { '' }
296
296
  subject.update_rates
297
- subject.rates_timestamp.must_equal Time.at(0)
297
+ _(subject.rates_timestamp).must_equal Time.at(0)
298
298
  end
299
299
 
300
300
  it 'should return a Time object' do
301
301
  subject.update_rates
302
- subject.rates_timestamp.class.must_equal Time
302
+ _(subject.rates_timestamp.class).must_equal Time
303
303
  end
304
304
  end
305
305
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: money-openexchangerates-bank
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Egon Zemmer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-04 00:00:00.000000000 Z
11
+ date: 2021-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: money
@@ -185,11 +185,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
185
185
  - !ruby/object:Gem::Version
186
186
  version: '0'
187
187
  requirements: []
188
- rubyforge_project:
189
- rubygems_version: 2.5.2
188
+ rubygems_version: 3.2.0
190
189
  signing_key:
191
190
  specification_version: 4
192
191
  summary: A gem that calculates the exchange rate using published rates from openexchangerates.org.
193
192
  test_files:
194
193
  - test/openexchangerates_bank_test.rb
195
- has_rdoc: