fafx 0.1.6 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 55db911858a337cfb8c6dbaf5f74442aacc9e88d
4
- data.tar.gz: 4021b29cf40373b2df48807eda30ceadaec32623
2
+ SHA256:
3
+ metadata.gz: f0381ead9180720f761c5b030f756b526c9c46804b3bc42092f1a07c5bd341ab
4
+ data.tar.gz: a9973cf4a3f9f4020e593ce2b90a7905a81c264965184f81058e74061749968b
5
5
  SHA512:
6
- metadata.gz: ddb2b486dd15d8affffdce65451358764c2f27e26d31590ee152f143244c4e7fd739b1a397a6a00a60470ecec287e8dde6d2b1b1abee2b843fb66fbc2f4bc3e1
7
- data.tar.gz: 570d0f8d7d9bbf05da9d6eb2b1e9f2f89248153ea83487a600aebff16c8e3399e1e7ad9e8b4158852412a856715758e7f2ac1a96fbbec4b25ebda8615bc4ebf2
6
+ metadata.gz: 259c15686a09609d4aba91d68044cd9e59baecc67de80308834b904ab2c0f71713bf5dbcb38604cd2814d4d60796ee0e83bde390368015f7a0504dc78c1a8c0e
7
+ data.tar.gz: e675d1f1dedee9eefbf0d5b2f0742c1710310bad785c04e1395255aad5a62cb41ee2018511acd39621915cfe8e666d873d21b90be7f955b4a1e0f842a9f8c7bb
@@ -1,7 +1,7 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.2.3
4
+ - 2.6.3
5
5
  before_install: gem install bundler -v 1.16.1
6
6
  script:
7
7
  - bundle exec rspec
@@ -9,7 +9,7 @@ GEM
9
9
  specs:
10
10
  diff-lcs (1.3)
11
11
  mini_portile2 (2.4.0)
12
- nokogiri (1.9.1)
12
+ nokogiri (1.10.7)
13
13
  mini_portile2 (~> 2.4.0)
14
14
  rake (10.5.0)
15
15
  rspec (3.7.0)
data/README.md CHANGED
@@ -26,6 +26,10 @@ Usage: fafx [options]
26
26
  require 'Date'
27
27
  require 'fafx'
28
28
 
29
+ # Gets the most recent rates
30
+ Fafx::ExchangeRate.get('GBP', 'USD')
31
+ # => 1.2951645399597045
32
+
29
33
  Fafx::ExchangeRate.at(Date.today, 'GBP', 'USD')
30
34
  # => 1.2951645399597045
31
35
 
@@ -9,6 +9,11 @@ class Core
9
9
  @currencies = @rates[@dates.first].keys
10
10
  end
11
11
 
12
+ def rate(curr)
13
+ raise Fafx::CurrencyError, "#{curr} not found" unless @currencies.include?(curr)
14
+ @rates[@dates.first][curr]
15
+ end
16
+
12
17
  def rates_at(date, curr)
13
18
  raise Fafx::DateError, 'Date not available' unless @dates.include?(date)
14
19
  raise Fafx::CurrencyError, "#{curr} not found" unless @currencies.include?(curr)
@@ -1,5 +1,10 @@
1
1
  module Fafx
2
2
  module ExchangeRate
3
+ def get(base, other)
4
+ core = Core.new
5
+ core.rate(other) / core.rate(base)
6
+ end
7
+
3
8
  def at(date, base, other)
4
9
  date = DateHandler.get(date)
5
10
  ex_rates = Core.new
@@ -25,7 +30,8 @@ module Fafx
25
30
  def update_data
26
31
  DataFetcher.save_to_disk
27
32
  end
28
- module_function :at,
33
+ module_function :get,
34
+ :at,
29
35
  :currencies_available,
30
36
  :dates_available,
31
37
  :most_recent,
@@ -1,3 +1,3 @@
1
1
  module Fafx
2
- VERSION = '0.1.6'.freeze
2
+ VERSION = '0.2.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fafx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Frank Kair
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-04 00:00:00.000000000 Z
11
+ date: 2020-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -118,8 +118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  requirements: []
121
- rubyforge_project:
122
- rubygems_version: 2.4.5.1
121
+ rubygems_version: 3.0.3
123
122
  signing_key:
124
123
  specification_version: 4
125
124
  summary: Exchange Rates from the European Central Bank