fxpotato 0.2.3 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Dockerfile +2 -1
- data/Rakefile +1 -1
- data/exe/fxpotato +3 -0
- data/fxpotato.gemspec +4 -1
- data/lib/fxpotato/cli.rb +11 -0
- data/lib/fxpotato/version.rb +1 -1
- data/lib/fxpotato/xml_repo.rb +1 -0
- data/lib/fxpotato.rb +3 -3
- metadata +47 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6796905596542f38df7dbe3a0afc16c0244fd80c
|
4
|
+
data.tar.gz: 841a477e2d0a26edce06c98f5b86d629e1578129
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6a9544072ae057ad9ede3adb84f368be7c68f911f7781725179859dce7f80fbf5df879f011bf3512a2c18c5e0534a3e34fba848eb15f05b1860edb3113df03d9
|
7
|
+
data.tar.gz: 1fb85c75a4e95c3070b52f56c147b3d879d1c7c20164af2bad7293b0d9723575fd524a2490bf222b3f8c46c6d8664eb9a7a1537f754c6160c14ac9f31235cff9
|
data/Dockerfile
CHANGED
@@ -6,6 +6,7 @@ RUN apk update && apk upgrade && \
|
|
6
6
|
COPY Gemfile /usr/src/app/
|
7
7
|
COPY Gemfile.lock /usr/src/app/
|
8
8
|
COPY fxpotato.gemspec /usr/src/app/
|
9
|
+
COPY .git /usr/src/app/.git
|
9
10
|
COPY lib/fxpotato/version.rb /usr/src/app/lib/fxpotato/
|
10
11
|
|
11
12
|
WORKDIR /usr/src/app
|
@@ -14,4 +15,4 @@ RUN bundle install
|
|
14
15
|
|
15
16
|
COPY . /usr/src/app/
|
16
17
|
|
17
|
-
CMD rake test
|
18
|
+
CMD bundle exec cucumber features && rake test
|
data/Rakefile
CHANGED
@@ -25,7 +25,7 @@ end
|
|
25
25
|
|
26
26
|
desc "Build, test, bump version, and release in a container"
|
27
27
|
task :docker_release do
|
28
|
-
sh %{ docker build --force-rm -t fx-potato . && docker run --rm fx-potato rake test && gem bump && rake release }
|
28
|
+
sh %{ docker build --force-rm -t fx-potato . && docker run --rm fx-potato bundle exec cucumber features && rake test && gem bump && rake release }
|
29
29
|
end
|
30
30
|
|
31
31
|
task :default => :test
|
data/exe/fxpotato
ADDED
data/fxpotato.gemspec
CHANGED
@@ -25,6 +25,9 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.add_development_dependency "rake", "~> 10.0"
|
26
26
|
spec.add_development_dependency "minitest", "~> 5.0"
|
27
27
|
spec.add_development_dependency "gem-release", "~> 1.0"
|
28
|
-
|
28
|
+
spec.add_development_dependency "cucumber", "~> 2.4"
|
29
|
+
spec.add_development_dependency "aruba", "~> 0.14"
|
30
|
+
|
31
|
+
spec.add_dependency "thor", "~> 0.19"
|
29
32
|
spec.add_dependency 'nokogiri', '~> 1.6'
|
30
33
|
end
|
data/lib/fxpotato/cli.rb
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'thor'
|
2
|
+
require 'fxpotato'
|
3
|
+
|
4
|
+
module FxPotato
|
5
|
+
class CLI < Thor
|
6
|
+
desc "getrate DATE FROM_CURRENCY TO_CURRENCY", "Gets the foreign exchange rate for the given currencies on the chosen date."
|
7
|
+
def getrate(date, from, to)
|
8
|
+
puts FxPotato.at(date, from, to)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
data/lib/fxpotato/version.rb
CHANGED
data/lib/fxpotato/xml_repo.rb
CHANGED
data/lib/fxpotato.rb
CHANGED
@@ -10,8 +10,8 @@ module FxPotato
|
|
10
10
|
raise "Must specify date" if date.nil?
|
11
11
|
raise "Must specify from_currency" if from_currency.nil?
|
12
12
|
raise "Must specify to_currency" if to_currency.nil?
|
13
|
-
from = RateStore.get(
|
14
|
-
to = RateStore.get(
|
13
|
+
from = RateStore.get(self.repo, date, from_currency)
|
14
|
+
to = RateStore.get(self.repo, date, to_currency)
|
15
15
|
RateCalculator.calculate(from, to)
|
16
16
|
end
|
17
17
|
|
@@ -22,6 +22,6 @@ module FxPotato
|
|
22
22
|
end
|
23
23
|
|
24
24
|
module_function
|
25
|
-
def repo; @repo ||= XmlRepo end
|
25
|
+
def repo; @repo ||= XmlRepo.new(nil) end
|
26
26
|
def repo= v; @repo = v end
|
27
27
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fxpotato
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Liam Stupid Name Humphreys
|
@@ -66,6 +66,48 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: cucumber
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '2.4'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '2.4'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: aruba
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.14'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0.14'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: thor
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0.19'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0.19'
|
69
111
|
- !ruby/object:Gem::Dependency
|
70
112
|
name: nokogiri
|
71
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,7 +127,8 @@ description: Uses last daily feed from European Central Bank website, and expose
|
|
85
127
|
given day.
|
86
128
|
email:
|
87
129
|
- liam.humphreys1989@gmail.com
|
88
|
-
executables:
|
130
|
+
executables:
|
131
|
+
- fxpotato
|
89
132
|
extensions: []
|
90
133
|
extra_rdoc_files: []
|
91
134
|
files:
|
@@ -98,8 +141,10 @@ files:
|
|
98
141
|
- Rakefile
|
99
142
|
- bin/console
|
100
143
|
- bin/setup
|
144
|
+
- exe/fxpotato
|
101
145
|
- fxpotato.gemspec
|
102
146
|
- lib/fxpotato.rb
|
147
|
+
- lib/fxpotato/cli.rb
|
103
148
|
- lib/fxpotato/paths.rb
|
104
149
|
- lib/fxpotato/rate_calculator.rb
|
105
150
|
- lib/fxpotato/rate_fetcher.rb
|