google_finance_currency_converter 0.2.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
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: []