google_currency 3.1.0 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 15465e69da6f84b9957b6cd166fa5623f8ddbf64
4
+ data.tar.gz: 5dccac4429dc84a2ae1615d6cb43a45120f4445c
5
+ SHA512:
6
+ metadata.gz: c1b9bdf4d77d9e35b67d45b34f5c330dfad9c8737e9e078425b998cb8960569e1cdc7179d50d0d94d608e35e80266fa92bdd9bb8c4d6c48c2e4ec8928d0d17fa
7
+ data.tar.gz: 39b45cf9d40d71e436a0d2444cf68b748567743a2a74355a5af4f4a8bf773ead3bccd46ebe44597e458307a88945ead011f535808a682d364d43cff33be24192
data/README.md CHANGED
@@ -21,8 +21,12 @@ Usage
21
21
  Money.default_bank = Money::Bank::GoogleCurrency.new
22
22
 
23
23
  # create a new money object, and use the standard #exchange_to method
24
- n = 1.to_money(:USD)
25
- n.exchange_to(:EUR)
24
+ money = Money.new(1_00, "USD") # amount is in cents
25
+ money.exchange_to(:EUR)
26
+
27
+ # or install the 'monetize' gem
28
+ money = 1.to_money(:USD)
29
+ money.exchange_to(:EUR)
26
30
 
27
31
  An `UnknownRate` will be thrown if `#exchange_to` is called with a `Currency`
28
32
  that `Money` knows, but Google does not.
@@ -1,20 +1,19 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "google_currency"
3
- s.version = "3.1.0"
3
+ s.version = "3.2.0"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.authors = ["Shane Emmons"]
6
6
  s.email = ["semmons99@gmail.com"]
7
7
  s.homepage = "http://rubymoney.github.com/google_currency"
8
8
  s.summary = "Access the Google Currency exchange rate data."
9
9
  s.description = "GoogleCurrency extends Money::Bank::Base and gives you access to the current Google Currency exchange rates."
10
+ s.license = 'MIT'
10
11
 
11
- s.required_rubygems_version = ">= 1.3.6"
12
-
13
- s.add_development_dependency "rspec", ">= 2.0.0"
12
+ s.add_development_dependency "rspec", ">= 3.0.0"
14
13
  s.add_development_dependency "yard", ">= 0.5.8"
15
14
  s.add_development_dependency "ffi"
16
15
 
17
- s.add_dependency "money", "~> 6.0"
16
+ s.add_dependency "money", "~> 6.5.0"
18
17
 
19
18
  s.files = Dir.glob("{lib,spec}/**/*")
20
19
  s.files += %w(LICENSE README.md CHANGELOG.md AUTHORS)
@@ -10,7 +10,7 @@ describe "GoogleCurrency" do
10
10
 
11
11
  it "should accept a ttl_in_seconds option" do
12
12
  Money::Bank::GoogleCurrency.ttl_in_seconds = 86400
13
- Money::Bank::GoogleCurrency.ttl_in_seconds.should eql(86400)
13
+ expect(Money::Bank::GoogleCurrency.ttl_in_seconds).to eq(86400)
14
14
  end
15
15
 
16
16
  describe ".refresh_rates_expiration!" do
@@ -19,56 +19,56 @@ describe "GoogleCurrency" do
19
19
  new_time = Time.now
20
20
  Timecop.freeze(new_time)
21
21
  Money::Bank::GoogleCurrency.refresh_rates_expiration!
22
- Money::Bank::GoogleCurrency.rates_expiration.should eql(new_time + 86400)
22
+ expect(Money::Bank::GoogleCurrency.rates_expiration).to eq(new_time + 86400)
23
23
  end
24
24
  end
25
25
 
26
26
  describe "#get_rate" do
27
27
  it "should try to expire the rates" do
28
- @bank.should_receive(:expire_rates).once
28
+ expect(@bank).to receive(:expire_rates).once
29
29
  @bank.get_rate('USD', 'USD')
30
30
  end
31
31
 
32
32
  it "should use #fetch_rate when rate is unknown" do
33
- @bank.should_receive(:fetch_rate).once
33
+ expect(@bank).to receive(:fetch_rate).once
34
34
  @bank.get_rate('USD', 'USD')
35
35
  end
36
36
 
37
37
  it "should not use #fetch_rate when rate is known" do
38
38
  @bank.get_rate('USD', 'USD')
39
- @bank.should_not_receive(:fetch_rate)
39
+ expect(@bank).to_not receive(:fetch_rate)
40
40
  @bank.get_rate('USD', 'USD')
41
41
  end
42
42
 
43
43
  it "should return the correct rate" do
44
- @bank.get_rate('USD', 'USD').should == 1.0
44
+ expect(@bank.get_rate('USD', 'USD')).to eq(1.0)
45
45
  end
46
46
 
47
47
  it "should store the rate for faster retreival" do
48
48
  @bank.get_rate('USD', 'EUR')
49
- @bank.rates.should include('USD_TO_EUR')
49
+ expect(@bank.rates).to include('USD_TO_EUR')
50
50
  end
51
51
 
52
52
  context "handles" do
53
53
  before :each do
54
54
  @uri = double('uri')
55
- @bank.stub(:build_uri){ |from,to| @uri }
55
+ allow(@bank).to receive(:build_uri){ |from,to| @uri }
56
56
  end
57
57
 
58
58
  it "should return rate when it is known" do
59
- @uri.stub(:read) { load_rate_http_response("sgd_to_usd") }
60
- @bank.get_rate('SGD', 'USD').should == BigDecimal("0.8066")
59
+ allow(@uri).to receive(:read) { load_rate_http_response("sgd_to_usd") }
60
+ expect(@bank.get_rate('SGD', 'USD')).to eq(BigDecimal("0.8066"))
61
61
  end
62
62
 
63
63
  it "should raise UnknownRate error when rate is not known" do
64
- @uri.stub(:read) { load_rate_http_response("vnd_to_usd") }
64
+ allow(@uri).to receive(:read) { load_rate_http_response("vnd_to_usd") }
65
65
  expect {
66
66
  @bank.get_rate('VND', 'USD')
67
67
  }.to raise_error(Money::Bank::UnknownRate)
68
68
  end
69
69
 
70
70
  it "should raise GoogleCurrencyFetchError there is an unknown issue with extracting the exchange rate" do
71
- @uri.stub(:read) { load_rate_http_response("error") }
71
+ allow(@uri).to receive(:read) { load_rate_http_response("error") }
72
72
  expect {
73
73
  @bank.get_rate('VND', 'USD')
74
74
  }.to raise_error(Money::Bank::GoogleCurrencyFetchError)
@@ -80,7 +80,7 @@ describe "GoogleCurrency" do
80
80
  it "should empty @rates" do
81
81
  @bank.get_rate('USD', 'EUR')
82
82
  @bank.flush_rates
83
- @bank.rates.should == {}
83
+ expect(@bank.rates).to eq({})
84
84
  end
85
85
  end
86
86
 
@@ -89,8 +89,8 @@ describe "GoogleCurrency" do
89
89
  @bank.get_rate('USD', 'EUR')
90
90
  @bank.get_rate('USD', 'JPY')
91
91
  @bank.flush_rate('USD', 'EUR')
92
- @bank.rates.should include('USD_TO_JPY')
93
- @bank.rates.should_not include('USD_TO_EUR')
92
+ expect(@bank.rates).to include('USD_TO_JPY')
93
+ expect(@bank.rates).to_not include('USD_TO_EUR')
94
94
  end
95
95
  end
96
96
 
@@ -106,7 +106,7 @@ describe "GoogleCurrency" do
106
106
  end
107
107
 
108
108
  it "should flush all rates" do
109
- @bank.should_receive(:flush_rates)
109
+ expect(@bank).to receive(:flush_rates)
110
110
  @bank.expire_rates
111
111
  end
112
112
 
@@ -114,13 +114,13 @@ describe "GoogleCurrency" do
114
114
  exp_time = Time.now + 1000
115
115
 
116
116
  @bank.expire_rates
117
- Money::Bank::GoogleCurrency.rates_expiration.should eql(exp_time)
117
+ expect(Money::Bank::GoogleCurrency.rates_expiration).to eq(exp_time)
118
118
  end
119
119
  end
120
120
 
121
121
  context "when the ttl has not expired" do
122
122
  it "not should flush all rates" do
123
- @bank.should_not_receive(:flush_rates)
123
+ expect(@bank).to_not receive(:flush_rates)
124
124
  @bank.expire_rates
125
125
  end
126
126
  end
metadata CHANGED
@@ -1,80 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_currency
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0
5
- prerelease:
4
+ version: 3.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Shane Emmons
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-11-07 00:00:00.000000000 Z
11
+ date: 2015-03-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rspec
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 2.0.0
19
+ version: 3.0.0
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: 2.0.0
26
+ version: 3.0.0
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: yard
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: 0.5.8
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: 0.5.8
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: ffi
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: money
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: '6.0'
61
+ version: 6.5.0
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: '6.0'
68
+ version: 6.5.0
78
69
  description: GoogleCurrency extends Money::Bank::Base and gives you access to the
79
70
  current Google Currency exchange rates.
80
71
  email:
@@ -83,44 +74,41 @@ executables: []
83
74
  extensions: []
84
75
  extra_rdoc_files: []
85
76
  files:
77
+ - ".gemtest"
78
+ - AUTHORS
79
+ - CHANGELOG.md
80
+ - LICENSE
81
+ - README.md
82
+ - Rakefile
83
+ - google_currency.gemspec
86
84
  - lib/money/bank/google_currency.rb
87
85
  - spec/google_currency_with_json_spec.rb
88
- - spec/rates/sgd_to_usd.html
89
86
  - spec/rates/error.html
87
+ - spec/rates/sgd_to_usd.html
90
88
  - spec/rates/vnd_to_usd.html
91
89
  - spec/spec_helper.rb
92
- - LICENSE
93
- - README.md
94
- - CHANGELOG.md
95
- - AUTHORS
96
- - Rakefile
97
- - .gemtest
98
- - google_currency.gemspec
99
90
  homepage: http://rubymoney.github.com/google_currency
100
- licenses: []
91
+ licenses:
92
+ - MIT
93
+ metadata: {}
101
94
  post_install_message:
102
95
  rdoc_options: []
103
96
  require_paths:
104
97
  - lib
105
98
  required_ruby_version: !ruby/object:Gem::Requirement
106
- none: false
107
99
  requirements:
108
- - - ! '>='
100
+ - - ">="
109
101
  - !ruby/object:Gem::Version
110
102
  version: '0'
111
- segments:
112
- - 0
113
- hash: 4518794046978314495
114
103
  required_rubygems_version: !ruby/object:Gem::Requirement
115
- none: false
116
104
  requirements:
117
- - - ! '>='
105
+ - - ">="
118
106
  - !ruby/object:Gem::Version
119
- version: 1.3.6
107
+ version: '0'
120
108
  requirements: []
121
109
  rubyforge_project:
122
- rubygems_version: 1.8.23
110
+ rubygems_version: 2.2.2
123
111
  signing_key:
124
- specification_version: 3
112
+ specification_version: 4
125
113
  summary: Access the Google Currency exchange rate data.
126
114
  test_files: []