coins 0.1.0
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 +7 -0
- data/bin/coins +4 -0
- data/lib/coins.rb +69 -0
- metadata +46 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 146f4415f32eb120c65fd03e406a029d62b04228
|
4
|
+
data.tar.gz: 55b9d2afd5e44cbf44db09c12bec9323e2847f6d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a98b5670f48723835371f6c3a591d30ad8e8441d09e38cb8ec3b1c4733149b739838752b87e60e7b6300a779278ef9de64382159179e5e669b40e220b886d0d8
|
7
|
+
data.tar.gz: ecccf51e9ac3603da31183a0b5cb949bc28b8d5b96bab1c5d069f90d88ef5ae7ac042cb1825cbaeb1bc73c334dd9aa4313e3df0152708cb2e7839bdeb16ce4f0
|
data/bin/coins
ADDED
data/lib/coins.rb
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
class Coins
|
5
|
+
def initialize
|
6
|
+
parseArgs
|
7
|
+
end
|
8
|
+
|
9
|
+
def setRate base
|
10
|
+
begin
|
11
|
+
@exchange = JSON.parse Net::HTTP.get(URI 'http://api.fixer.io/latest?base=' + base)
|
12
|
+
rescue
|
13
|
+
puts "Could not get exchange rate information.\nCheck your internet connnection or try again later."
|
14
|
+
exit 1
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def args? this
|
19
|
+
if ARGV.include? this
|
20
|
+
return true
|
21
|
+
end
|
22
|
+
return false
|
23
|
+
end
|
24
|
+
|
25
|
+
def currencyConvert from, to
|
26
|
+
return @exchange['rates'][to].to_f * from.to_f
|
27
|
+
end
|
28
|
+
|
29
|
+
def rates
|
30
|
+
@exchange['rates'].each do |types|
|
31
|
+
print types.to_s + "\n"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def rate currency
|
36
|
+
return @exchange['rates'][currency].to_s
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
def parseArgs
|
41
|
+
if args?('base')
|
42
|
+
setRate(ARGV[ARGV.index('base') + 1].upcase)
|
43
|
+
end
|
44
|
+
|
45
|
+
unless args?('base') || args?('against') || args?('from')
|
46
|
+
puts "No base rate set,\nset base rate by typing 'base' and than the three letter currency.\nDefaulting to USD.\n\n"
|
47
|
+
setRate('USD')
|
48
|
+
end
|
49
|
+
|
50
|
+
if args?('against')
|
51
|
+
setRate(ARGV[ARGV.index('against') + 1].upcase)
|
52
|
+
end
|
53
|
+
|
54
|
+
if args?('rates')
|
55
|
+
rates
|
56
|
+
end
|
57
|
+
|
58
|
+
if args?('rate')
|
59
|
+
puts rate ARGV[ARGV.index('rate') + 1].upcase
|
60
|
+
end
|
61
|
+
|
62
|
+
if args?('from') && args?('to')
|
63
|
+
setRate(ARGV[ARGV.index('from') + 2].upcase)
|
64
|
+
from = ARGV[ARGV.index('from') + 1].to_f
|
65
|
+
to = ARGV[ARGV.index('to') + 1].upcase
|
66
|
+
puts currencyConvert from, to
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
metadata
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: coins
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Demonstrandum
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2017-05-16 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: A live terminal currency exchange rate converter
|
14
|
+
email: knutsen@jetspace.co
|
15
|
+
executables:
|
16
|
+
- coins
|
17
|
+
extensions: []
|
18
|
+
extra_rdoc_files: []
|
19
|
+
files:
|
20
|
+
- bin/coins
|
21
|
+
- lib/coins.rb
|
22
|
+
homepage: https://github.com/Demonstrandum/Coins
|
23
|
+
licenses:
|
24
|
+
- GPL-3.0
|
25
|
+
metadata: {}
|
26
|
+
post_install_message:
|
27
|
+
rdoc_options: []
|
28
|
+
require_paths:
|
29
|
+
- lib
|
30
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - ">="
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: 1.9.2
|
35
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
requirements: []
|
41
|
+
rubyforge_project:
|
42
|
+
rubygems_version: 2.6.11
|
43
|
+
signing_key:
|
44
|
+
specification_version: 4
|
45
|
+
summary: Terminal currency converter
|
46
|
+
test_files: []
|