google_finance_currency_converter 0.2.0 → 0.3.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 44fc65187b8b654f07f0946df6d6f3a5a8857783
4
+ data.tar.gz: 9b3daaeff75df2e81e0a9b295bfc0809d5b9b2b0
5
+ SHA512:
6
+ metadata.gz: b45001163f59ad9874922be89ef50f53ca99bede5e85ee4bd43fb78e44c8fac04b3663978cc92546f7a7d59c699ef34f21b57e2cb458a2f971a16175ce2cbd2a
7
+ data.tar.gz: 0a30c78d8fbcdf855538b15cb6484b2ec620994b6f29bd85ead28c0f92ababe3495a2144bd53484695d71f67bc739941606fdab52e25f1845bcc20de633cfb96
data/Gemfile CHANGED
@@ -6,9 +6,8 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "rspec", "~> 2.3.0"
10
- gem "bundler", "~> 1.0.0"
11
- gem "jeweler", "~> 1.6.4"
12
- gem "rcov", ">= 0"
13
- gem "webmock", "1.7.7"
9
+ gem "rspec"
10
+ gem "bundler"
11
+ gem "jeweler"
12
+ gem "webmock"
14
13
  end
data/Gemfile.lock CHANGED
@@ -1,34 +1,69 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- addressable (2.2.6)
5
- crack (0.3.1)
6
- diff-lcs (1.1.3)
4
+ addressable (2.3.5)
5
+ builder (3.2.2)
6
+ crack (0.4.1)
7
+ safe_yaml (~> 0.9.0)
8
+ diff-lcs (1.2.4)
9
+ faraday (0.8.8)
10
+ multipart-post (~> 1.2.0)
7
11
  git (1.2.5)
8
- jeweler (1.6.4)
12
+ github_api (0.10.1)
13
+ addressable
14
+ faraday (~> 0.8.1)
15
+ hashie (>= 1.2)
16
+ multi_json (~> 1.4)
17
+ nokogiri (~> 1.5.2)
18
+ oauth2
19
+ hashie (2.0.5)
20
+ highline (1.6.19)
21
+ httpauth (0.2.0)
22
+ jeweler (1.8.6)
23
+ builder
9
24
  bundler (~> 1.0)
10
25
  git (>= 1.2.5)
26
+ github_api (= 0.10.1)
27
+ highline (>= 1.6.15)
28
+ nokogiri (= 1.5.10)
11
29
  rake
12
- rake (0.9.2)
13
- rcov (0.9.11)
14
- rspec (2.3.0)
15
- rspec-core (~> 2.3.0)
16
- rspec-expectations (~> 2.3.0)
17
- rspec-mocks (~> 2.3.0)
18
- rspec-core (2.3.1)
19
- rspec-expectations (2.3.0)
20
- diff-lcs (~> 1.1.2)
21
- rspec-mocks (2.3.0)
22
- webmock (1.7.7)
23
- addressable (~> 2.2, > 2.2.5)
24
- crack (>= 0.1.7)
30
+ rdoc
31
+ json (1.8.0)
32
+ jwt (0.1.8)
33
+ multi_json (>= 1.5)
34
+ multi_json (1.7.7)
35
+ multi_xml (0.5.4)
36
+ multipart-post (1.2.0)
37
+ nokogiri (1.5.10)
38
+ oauth2 (0.9.2)
39
+ faraday (~> 0.8)
40
+ httpauth (~> 0.2)
41
+ jwt (~> 0.1.4)
42
+ multi_json (~> 1.0)
43
+ multi_xml (~> 0.5)
44
+ rack (~> 1.2)
45
+ rack (1.5.2)
46
+ rake (10.1.0)
47
+ rdoc (4.0.1)
48
+ json (~> 1.4)
49
+ rspec (2.14.1)
50
+ rspec-core (~> 2.14.0)
51
+ rspec-expectations (~> 2.14.0)
52
+ rspec-mocks (~> 2.14.0)
53
+ rspec-core (2.14.4)
54
+ rspec-expectations (2.14.0)
55
+ diff-lcs (>= 1.1.3, < 2.0)
56
+ rspec-mocks (2.14.2)
57
+ safe_yaml (0.9.4)
58
+ webmock (1.13.0)
59
+ addressable (>= 2.2.7)
60
+ crack (>= 0.3.2)
25
61
 
26
62
  PLATFORMS
27
63
  ruby
28
64
 
29
65
  DEPENDENCIES
30
- bundler (~> 1.0.0)
31
- jeweler (~> 1.6.4)
32
- rcov
33
- rspec (~> 2.3.0)
34
- webmock (= 1.7.7)
66
+ bundler
67
+ jeweler
68
+ rspec
69
+ webmock
data/README.rdoc CHANGED
@@ -1,6 +1,6 @@
1
1
  = google_finance_currency_converter
2
2
 
3
- GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL').value # 2.784
3
+ GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL').rate # 2.784
4
4
 
5
5
  == Contributing to google_finance_currency_converter
6
6
 
data/Rakefile CHANGED
@@ -38,7 +38,7 @@ end
38
38
 
39
39
  task :default => :spec
40
40
 
41
- require 'rake/rdoctask'
41
+ require 'rdoc/task'
42
42
  Rake::RDocTask.new do |rdoc|
43
43
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
44
44
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.0
1
+ 0.3.1
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "google_finance_currency_converter"
8
- s.version = "0.2.0"
8
+ s.version = "0.3.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Pedro Menezes"]
12
- s.date = "2013-02-04"
12
+ s.date = "2013-08-01"
13
13
  s.description = "a wrapper for google finance currency converter"
14
14
  s.email = "pedrojudo@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -28,37 +28,35 @@ Gem::Specification.new do |s|
28
28
  "google_finance_currency_converter.gemspec",
29
29
  "lib/google_finance_currency_converter.rb",
30
30
  "spec/google_finance_currency_converter_spec.rb",
31
+ "spec/helper/error.html",
31
32
  "spec/helper/response.html",
32
33
  "spec/spec_helper.rb"
33
34
  ]
34
35
  s.homepage = "http://github.com/pedromenezes/google_finance_currency_converter"
35
36
  s.licenses = ["MIT"]
36
37
  s.require_paths = ["lib"]
37
- s.rubygems_version = "1.8.24"
38
+ s.rubygems_version = "2.0.5"
38
39
  s.summary = "a wrapper for google finance currency converter"
39
40
 
40
41
  if s.respond_to? :specification_version then
41
- s.specification_version = 3
42
+ s.specification_version = 4
42
43
 
43
44
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
44
- s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
45
- s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
46
- s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
47
- s.add_development_dependency(%q<rcov>, [">= 0"])
48
- s.add_development_dependency(%q<webmock>, ["= 1.7.7"])
45
+ s.add_development_dependency(%q<rspec>, [">= 0"])
46
+ s.add_development_dependency(%q<bundler>, [">= 0"])
47
+ s.add_development_dependency(%q<jeweler>, [">= 0"])
48
+ s.add_development_dependency(%q<webmock>, [">= 0"])
49
49
  else
50
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
51
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
52
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
53
- s.add_dependency(%q<rcov>, [">= 0"])
54
- s.add_dependency(%q<webmock>, ["= 1.7.7"])
50
+ s.add_dependency(%q<rspec>, [">= 0"])
51
+ s.add_dependency(%q<bundler>, [">= 0"])
52
+ s.add_dependency(%q<jeweler>, [">= 0"])
53
+ s.add_dependency(%q<webmock>, [">= 0"])
55
54
  end
56
55
  else
57
- s.add_dependency(%q<rspec>, ["~> 2.3.0"])
58
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
59
- s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
60
- s.add_dependency(%q<rcov>, [">= 0"])
61
- s.add_dependency(%q<webmock>, ["= 1.7.7"])
56
+ s.add_dependency(%q<rspec>, [">= 0"])
57
+ s.add_dependency(%q<bundler>, [">= 0"])
58
+ s.add_dependency(%q<jeweler>, [">= 0"])
59
+ s.add_dependency(%q<webmock>, [">= 0"])
62
60
  end
63
61
  end
64
62
 
@@ -4,9 +4,10 @@ class GoogleFinanceCurrencyConverter
4
4
  def initialize(params={})
5
5
  @from = params[:from]
6
6
  @to = params[:to]
7
+ raise "Same code" if @from == @to
7
8
  end
8
9
 
9
- def value
10
+ def rate
10
11
  parse_response(request)
11
12
  end
12
13
 
@@ -16,6 +17,8 @@ class GoogleFinanceCurrencyConverter
16
17
  end
17
18
 
18
19
  def parse_response(response)
19
- response.scan(/<span class=bld>([^.]+(?:\.(?:\d+))?)/)[0][0].to_f
20
+ rate = response.scan(/<span class=bld>([^.]+(?:\.(?:\d+))?)/)
21
+ raise "Rate not found" if rate.empty?
22
+ rate[0][0].to_f
20
23
  end
21
24
  end
@@ -1,24 +1,36 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
2
 
3
- describe "GoogleFinanceCurrencyConverter" do
4
- it "converts integer to brazilian reais" do
5
- stub_converted_val(2)
3
+ describe GoogleFinanceCurrencyConverter do
4
+ describe "conversion" do
5
+ it "should work with currency that returns an integer" do
6
+ stub_converted_val_response(2)
6
7
 
7
- converter = GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL')
8
- converter.value.should == 2
9
- end
10
-
11
- it "converts floats to brazilian reais" do
12
- stub_converted_val(2.784)
8
+ converter = GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL')
9
+ converter.rate.should == 2
10
+ end
11
+
12
+ it "should work with currency that returns a float" do
13
+ stub_converted_val_response(2.784)
13
14
 
14
- converter = GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL')
15
- converter.value.should == 2.784
15
+ converter = GoogleFinanceCurrencyConverter.new(:from => 'GBP', :to => 'BRL')
16
+ converter.rate.should == 2.784
17
+ end
16
18
  end
17
- end
18
-
19
- def stub_converted_val(val)
20
- File.open(File.expand_path(File.dirname(__FILE__) + '/helper/response.html'), 'r') do |f|
21
- stub_request(:get, "http://www.google.com/finance/converter?a=1&from=GBP&to=BRL").
22
- to_return(:body => f.read.gsub("<converted_val>", val.to_s))
19
+
20
+ describe "raising error" do
21
+ it "should raise 'Same code' if from and to codes are the same" do
22
+ lambda {
23
+ converter = GoogleFinanceCurrencyConverter.new(:from => 'BRL', :to => 'BRL')
24
+ }.should raise_error("Same code")
25
+ end
26
+
27
+ it "should raise 'Rate not found' if the conversion doesn't exist" do
28
+ stub_error_response()
29
+
30
+ converter = GoogleFinanceCurrencyConverter.new(:from => 'BRL', :to => 'ALL')
31
+ lambda {
32
+ converter.rate
33
+ }.should raise_error("Rate not found")
34
+ end
23
35
  end
24
36
  end
@@ -0,0 +1,221 @@
1
+
2
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
3
+ <html>
4
+ <head>
5
+ <title>Currency Converter - Google Finance</title>
6
+ <meta name="Description" content="Get real-time stock quotes & charts, financial news, currency conversions, or track your portfolio with Google Finance.">
7
+ <link rel="stylesheet" type="text/css" href="/finance/s/Jtl56e5m90s/styles/finance_us.css">
8
+ <link rel="icon"
9
+ type="image/vnd.microsoft.icon" href="/finance/favicon.ico"></head>
10
+ <body style="margin-left: 6px; min-width: 0px;">
11
+ <div class=g-doc>
12
+ <form action="/finance/converter" method="get" name="f">
13
+ <div class=sfe-break-top>
14
+ <input name=a maxlength=12 size=5 autocomplete=off value="1">
15
+ </div>
16
+ <div class=sfe-break-top>
17
+ <select name=from value="BRL">
18
+ <option value="AED">United Arab Emirates Dirham (AED)</option>
19
+ <option value="ANG">Netherlands Antillean Guilder (ANG)</option>
20
+ <option value="ARS">Argentine Peso (ARS)</option>
21
+ <option value="AUD">Australian Dollar (A$)</option>
22
+ <option value="BDT">Bangladeshi Taka (BDT)</option>
23
+ <option value="BGN">Bulgarian Lev (BGN)</option>
24
+ <option value="BHD">Bahraini Dinar (BHD)</option>
25
+ <option value="BND">Brunei Dollar (BND)</option>
26
+ <option value="BOB">Bolivian Boliviano (BOB)</option>
27
+ <option SELECTED value="BRL">Brazilian Real (R$)</option>
28
+ <option value="BWP">Botswanan Pula (BWP)</option>
29
+ <option value="CAD">Canadian Dollar (CA$)</option>
30
+ <option value="CHF">Swiss Franc (CHF)</option>
31
+ <option value="CLP">Chilean Peso (CLP)</option>
32
+ <option value="CNY">Chinese Yuan (CN¥)</option>
33
+ <option value="COP">Colombian Peso (COP)</option>
34
+ <option value="CRC">Costa Rican Colón (CRC)</option>
35
+ <option value="CZK">Czech Republic Koruna (CZK)</option>
36
+ <option value="DKK">Danish Krone (DKK)</option>
37
+ <option value="DOP">Dominican Peso (DOP)</option>
38
+ <option value="DZD">Algerian Dinar (DZD)</option>
39
+ <option value="EEK">Estonian Kroon (EEK)</option>
40
+ <option value="EGP">Egyptian Pound (EGP)</option>
41
+ <option value="EUR">Euro (€)</option>
42
+ <option value="FJD">Fijian Dollar (FJD)</option>
43
+ <option value="GBP">British Pound Sterling (£)</option>
44
+ <option value="HKD">Hong Kong Dollar (HK$)</option>
45
+ <option value="HNL">Honduran Lempira (HNL)</option>
46
+ <option value="HRK">Croatian Kuna (HRK)</option>
47
+ <option value="HUF">Hungarian Forint (HUF)</option>
48
+ <option value="IDR">Indonesian Rupiah (IDR)</option>
49
+ <option value="ILS">Israeli New Sheqel (₪)</option>
50
+ <option value="INR">Indian Rupee (Rs.)</option>
51
+ <option value="JMD">Jamaican Dollar (JMD)</option>
52
+ <option value="JOD">Jordanian Dinar (JOD)</option>
53
+ <option value="JPY">Japanese Yen (¥)</option>
54
+ <option value="KES">Kenyan Shilling (KES)</option>
55
+ <option value="KRW">South Korean Won (₩)</option>
56
+ <option value="KWD">Kuwaiti Dinar (KWD)</option>
57
+ <option value="KYD">Cayman Islands Dollar (KYD)</option>
58
+ <option value="KZT">Kazakhstani Tenge (KZT)</option>
59
+ <option value="LBP">Lebanese Pound (LBP)</option>
60
+ <option value="LKR">Sri Lankan Rupee (LKR)</option>
61
+ <option value="LTL">Lithuanian Litas (LTL)</option>
62
+ <option value="LVL">Latvian Lats (LVL)</option>
63
+ <option value="MAD">Moroccan Dirham (MAD)</option>
64
+ <option value="MDL">Moldovan Leu (MDL)</option>
65
+ <option value="MKD">Macedonian Denar (MKD)</option>
66
+ <option value="MUR">Mauritian Rupee (MUR)</option>
67
+ <option value="MVR">Maldivian Rufiyaa (MVR)</option>
68
+ <option value="MXN">Mexican Peso (MX$)</option>
69
+ <option value="MYR">Malaysian Ringgit (MYR)</option>
70
+ <option value="NAD">Namibian Dollar (NAD)</option>
71
+ <option value="NGN">Nigerian Naira (NGN)</option>
72
+ <option value="NIO">Nicaraguan Córdoba (NIO)</option>
73
+ <option value="NOK">Norwegian Krone (NOK)</option>
74
+ <option value="NPR">Nepalese Rupee (NPR)</option>
75
+ <option value="NZD">New Zealand Dollar (NZ$)</option>
76
+ <option value="OMR">Omani Rial (OMR)</option>
77
+ <option value="PEN">Peruvian Nuevo Sol (PEN)</option>
78
+ <option value="PGK">Papua New Guinean Kina (PGK)</option>
79
+ <option value="PHP">Philippine Peso (Php)</option>
80
+ <option value="PKR">Pakistani Rupee (PKR)</option>
81
+ <option value="PLN">Polish Zloty (PLN)</option>
82
+ <option value="PYG">Paraguayan Guarani (PYG)</option>
83
+ <option value="QAR">Qatari Rial (QAR)</option>
84
+ <option value="RON">Romanian Leu (RON)</option>
85
+ <option value="RSD">Serbian Dinar (RSD)</option>
86
+ <option value="RUB">Russian Ruble (RUB)</option>
87
+ <option value="SAR">Saudi Riyal (SAR)</option>
88
+ <option value="SCR">Seychellois Rupee (SCR)</option>
89
+ <option value="SEK">Swedish Krona (SEK)</option>
90
+ <option value="SGD">Singapore Dollar (SGD)</option>
91
+ <option value="SKK">Slovak Koruna (SKK)</option>
92
+ <option value="SLL">Sierra Leonean Leone (SLL)</option>
93
+ <option value="SVC">Salvadoran Colón (SVC)</option>
94
+ <option value="THB">Thai Baht (฿)</option>
95
+ <option value="TND">Tunisian Dinar (TND)</option>
96
+ <option value="TRY">Turkish Lira (TRY)</option>
97
+ <option value="TTD">Trinidad and Tobago Dollar (TTD)</option>
98
+ <option value="TWD">New Taiwan Dollar (NT$)</option>
99
+ <option value="TZS">Tanzanian Shilling (TZS)</option>
100
+ <option value="UAH">Ukrainian Hryvnia (UAH)</option>
101
+ <option value="UGX">Ugandan Shilling (UGX)</option>
102
+ <option value="USD">US Dollar ($)</option>
103
+ <option value="UYU">Uruguayan Peso (UYU)</option>
104
+ <option value="UZS">Uzbekistan Som (UZS)</option>
105
+ <option value="VEF">Venezuelan Bolívar (VEF)</option>
106
+ <option value="VND">Vietnamese Dong (₫)</option>
107
+ <option value="XOF">CFA Franc BCEAO (CFA)</option>
108
+ <option value="YER">Yemeni Rial (YER)</option>
109
+ <option value="ZAR">South African Rand (ZAR)</option>
110
+ <option value="ZMK">Zambian Kwacha (1968-2012) (ZMK)</option>
111
+ <option value="ZMW">Zambian Kwacha (ZMW)</option>
112
+ </select>
113
+ </div>
114
+ <div style="padding: 6px 8px">to</div>
115
+ <div>
116
+ <select name=to value="ALL">
117
+ <option value="AED">United Arab Emirates Dirham (AED)</option>
118
+ <option value="ANG">Netherlands Antillean Guilder (ANG)</option>
119
+ <option value="ARS">Argentine Peso (ARS)</option>
120
+ <option value="AUD">Australian Dollar (A$)</option>
121
+ <option value="BDT">Bangladeshi Taka (BDT)</option>
122
+ <option value="BGN">Bulgarian Lev (BGN)</option>
123
+ <option value="BHD">Bahraini Dinar (BHD)</option>
124
+ <option value="BND">Brunei Dollar (BND)</option>
125
+ <option value="BOB">Bolivian Boliviano (BOB)</option>
126
+ <option value="BRL">Brazilian Real (R$)</option>
127
+ <option value="BWP">Botswanan Pula (BWP)</option>
128
+ <option value="CAD">Canadian Dollar (CA$)</option>
129
+ <option value="CHF">Swiss Franc (CHF)</option>
130
+ <option value="CLP">Chilean Peso (CLP)</option>
131
+ <option value="CNY">Chinese Yuan (CN¥)</option>
132
+ <option value="COP">Colombian Peso (COP)</option>
133
+ <option value="CRC">Costa Rican Colón (CRC)</option>
134
+ <option value="CZK">Czech Republic Koruna (CZK)</option>
135
+ <option value="DKK">Danish Krone (DKK)</option>
136
+ <option value="DOP">Dominican Peso (DOP)</option>
137
+ <option value="DZD">Algerian Dinar (DZD)</option>
138
+ <option value="EEK">Estonian Kroon (EEK)</option>
139
+ <option value="EGP">Egyptian Pound (EGP)</option>
140
+ <option value="EUR">Euro (€)</option>
141
+ <option value="FJD">Fijian Dollar (FJD)</option>
142
+ <option value="GBP">British Pound Sterling (£)</option>
143
+ <option value="HKD">Hong Kong Dollar (HK$)</option>
144
+ <option value="HNL">Honduran Lempira (HNL)</option>
145
+ <option value="HRK">Croatian Kuna (HRK)</option>
146
+ <option value="HUF">Hungarian Forint (HUF)</option>
147
+ <option value="IDR">Indonesian Rupiah (IDR)</option>
148
+ <option value="ILS">Israeli New Sheqel (₪)</option>
149
+ <option value="INR">Indian Rupee (Rs.)</option>
150
+ <option value="JMD">Jamaican Dollar (JMD)</option>
151
+ <option value="JOD">Jordanian Dinar (JOD)</option>
152
+ <option value="JPY">Japanese Yen (¥)</option>
153
+ <option value="KES">Kenyan Shilling (KES)</option>
154
+ <option value="KRW">South Korean Won (₩)</option>
155
+ <option value="KWD">Kuwaiti Dinar (KWD)</option>
156
+ <option value="KYD">Cayman Islands Dollar (KYD)</option>
157
+ <option value="KZT">Kazakhstani Tenge (KZT)</option>
158
+ <option value="LBP">Lebanese Pound (LBP)</option>
159
+ <option value="LKR">Sri Lankan Rupee (LKR)</option>
160
+ <option value="LTL">Lithuanian Litas (LTL)</option>
161
+ <option value="LVL">Latvian Lats (LVL)</option>
162
+ <option value="MAD">Moroccan Dirham (MAD)</option>
163
+ <option value="MDL">Moldovan Leu (MDL)</option>
164
+ <option value="MKD">Macedonian Denar (MKD)</option>
165
+ <option value="MUR">Mauritian Rupee (MUR)</option>
166
+ <option value="MVR">Maldivian Rufiyaa (MVR)</option>
167
+ <option value="MXN">Mexican Peso (MX$)</option>
168
+ <option value="MYR">Malaysian Ringgit (MYR)</option>
169
+ <option value="NAD">Namibian Dollar (NAD)</option>
170
+ <option value="NGN">Nigerian Naira (NGN)</option>
171
+ <option value="NIO">Nicaraguan Córdoba (NIO)</option>
172
+ <option value="NOK">Norwegian Krone (NOK)</option>
173
+ <option value="NPR">Nepalese Rupee (NPR)</option>
174
+ <option value="NZD">New Zealand Dollar (NZ$)</option>
175
+ <option value="OMR">Omani Rial (OMR)</option>
176
+ <option value="PEN">Peruvian Nuevo Sol (PEN)</option>
177
+ <option value="PGK">Papua New Guinean Kina (PGK)</option>
178
+ <option value="PHP">Philippine Peso (Php)</option>
179
+ <option value="PKR">Pakistani Rupee (PKR)</option>
180
+ <option value="PLN">Polish Zloty (PLN)</option>
181
+ <option value="PYG">Paraguayan Guarani (PYG)</option>
182
+ <option value="QAR">Qatari Rial (QAR)</option>
183
+ <option value="RON">Romanian Leu (RON)</option>
184
+ <option value="RSD">Serbian Dinar (RSD)</option>
185
+ <option value="RUB">Russian Ruble (RUB)</option>
186
+ <option value="SAR">Saudi Riyal (SAR)</option>
187
+ <option value="SCR">Seychellois Rupee (SCR)</option>
188
+ <option value="SEK">Swedish Krona (SEK)</option>
189
+ <option value="SGD">Singapore Dollar (SGD)</option>
190
+ <option value="SKK">Slovak Koruna (SKK)</option>
191
+ <option value="SLL">Sierra Leonean Leone (SLL)</option>
192
+ <option value="SVC">Salvadoran Colón (SVC)</option>
193
+ <option value="THB">Thai Baht (฿)</option>
194
+ <option value="TND">Tunisian Dinar (TND)</option>
195
+ <option value="TRY">Turkish Lira (TRY)</option>
196
+ <option value="TTD">Trinidad and Tobago Dollar (TTD)</option>
197
+ <option value="TWD">New Taiwan Dollar (NT$)</option>
198
+ <option value="TZS">Tanzanian Shilling (TZS)</option>
199
+ <option value="UAH">Ukrainian Hryvnia (UAH)</option>
200
+ <option value="UGX">Ugandan Shilling (UGX)</option>
201
+ <option value="USD">US Dollar ($)</option>
202
+ <option value="UYU">Uruguayan Peso (UYU)</option>
203
+ <option value="UZS">Uzbekistan Som (UZS)</option>
204
+ <option value="VEF">Venezuelan Bolívar (VEF)</option>
205
+ <option value="VND">Vietnamese Dong (₫)</option>
206
+ <option value="XOF">CFA Franc BCEAO (CFA)</option>
207
+ <option value="YER">Yemeni Rial (YER)</option>
208
+ <option value="ZAR">South African Rand (ZAR)</option>
209
+ <option value="ZMK">Zambian Kwacha (1968-2012) (ZMK)</option>
210
+ <option value="ZMW">Zambian Kwacha (ZMW)</option>
211
+ </select>
212
+ </div>
213
+ &nbsp;
214
+ <div id=currency_converter_result>
215
+ <input type=submit value="Convert">
216
+ </div>
217
+ <input type=hidden name=meta value=ei&#61;SZH6UaC2IpqKlwPecg>
218
+ </form>
219
+ </body>
220
+ </div>
221
+ </html>
data/spec/spec_helper.rb CHANGED
@@ -12,3 +12,17 @@ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
12
12
  RSpec.configure do |config|
13
13
 
14
14
  end
15
+
16
+ def stub_converted_val_response(val)
17
+ File.open(File.expand_path(File.dirname(__FILE__) + '/helper/response.html'), 'r') do |f|
18
+ stub_request(:get, "http://www.google.com/finance/converter?a=1&from=GBP&to=BRL").
19
+ to_return(:body => f.read.gsub("<converted_val>", val.to_s))
20
+ end
21
+ end
22
+
23
+ def stub_error_response
24
+ File.open(File.expand_path(File.dirname(__FILE__) + '/helper/error.html'), 'r') do |f|
25
+ stub_request(:get, "http://www.google.com/finance/converter?a=1&from=BRL&to=ALL").
26
+ to_return(:body => f.read)
27
+ end
28
+ end
metadata CHANGED
@@ -1,96 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_finance_currency_converter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pedro Menezes
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-02-04 00:00:00.000000000 Z
11
+ date: 2013-08-01 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.3.0
19
+ version: '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.3.0
26
+ version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: bundler
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
- version: 1.0.0
33
+ version: '0'
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
- version: 1.0.0
40
+ version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: jeweler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
52
- - !ruby/object:Gem::Version
53
- version: 1.6.4
54
- type: :development
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 1.6.4
62
- - !ruby/object:Gem::Dependency
63
- name: rcov
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
45
+ - - '>='
68
46
  - !ruby/object:Gem::Version
69
47
  version: '0'
70
48
  type: :development
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ! '>='
52
+ - - '>='
76
53
  - !ruby/object:Gem::Version
77
54
  version: '0'
78
55
  - !ruby/object:Gem::Dependency
79
56
  name: webmock
80
57
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
58
  requirements:
83
- - - '='
59
+ - - '>='
84
60
  - !ruby/object:Gem::Version
85
- version: 1.7.7
61
+ version: '0'
86
62
  type: :development
87
63
  prerelease: false
88
64
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
65
  requirements:
91
- - - '='
66
+ - - '>='
92
67
  - !ruby/object:Gem::Version
93
- version: 1.7.7
68
+ version: '0'
94
69
  description: a wrapper for google finance currency converter
95
70
  email: pedrojudo@gmail.com
96
71
  executables: []
@@ -110,34 +85,31 @@ files:
110
85
  - google_finance_currency_converter.gemspec
111
86
  - lib/google_finance_currency_converter.rb
112
87
  - spec/google_finance_currency_converter_spec.rb
88
+ - spec/helper/error.html
113
89
  - spec/helper/response.html
114
90
  - spec/spec_helper.rb
115
91
  homepage: http://github.com/pedromenezes/google_finance_currency_converter
116
92
  licenses:
117
93
  - MIT
94
+ metadata: {}
118
95
  post_install_message:
119
96
  rdoc_options: []
120
97
  require_paths:
121
98
  - lib
122
99
  required_ruby_version: !ruby/object:Gem::Requirement
123
- none: false
124
100
  requirements:
125
- - - ! '>='
101
+ - - '>='
126
102
  - !ruby/object:Gem::Version
127
103
  version: '0'
128
- segments:
129
- - 0
130
- hash: -803970924464275287
131
104
  required_rubygems_version: !ruby/object:Gem::Requirement
132
- none: false
133
105
  requirements:
134
- - - ! '>='
106
+ - - '>='
135
107
  - !ruby/object:Gem::Version
136
108
  version: '0'
137
109
  requirements: []
138
110
  rubyforge_project:
139
- rubygems_version: 1.8.24
111
+ rubygems_version: 2.0.5
140
112
  signing_key:
141
- specification_version: 3
113
+ specification_version: 4
142
114
  summary: a wrapper for google finance currency converter
143
115
  test_files: []