hodlmoon 0.1.3 → 0.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: bcf8dff893d3eff1c2b478326214628ce6b8c6cd
4
- data.tar.gz: 4867a8e1bad506769de00f75affb416b3985962d
2
+ SHA256:
3
+ metadata.gz: 371d9a1a103e8cac35ae7f9a69c8df500c4b547c77605c3283a8bbe34530847d
4
+ data.tar.gz: 3dde2330b14504d02221ed06846aaaf003fffdc49a26932f8dd3a1e778b08b40
5
5
  SHA512:
6
- metadata.gz: 4c32aaf6a6e20ea16e3ee157fe2cf01a5752fc0d39708d7bea0c0e614f6e765f1679513eff641e512195e491178d971017f8fc816f15999d1218abe0642b87d7
7
- data.tar.gz: '08831f1833705d26a29b10c8649fba87b61a511476524d698bebfedb2b83068a6b1a62c1c4576eb4b320ad8fcbc3f31182847a6049ad7626519ad2a95fed5646'
6
+ metadata.gz: fe11ac03940ca6f5e9bfccdb8c2a72a1db843877d841af47dbac9c01d7f22bcb01355b24433b9fbc61eb3f39c042dfc7fd8522ff31977cdab8ec723f4b0dc2e0
7
+ data.tar.gz: 02a8ef3f59f976befd640b65644de6921f147e77bbd1e075c1ceb4bda7ae3c0ade395f4c932f07df711b25e180bcf32f402f02fc098d64711af2e38163e2a11a
@@ -0,0 +1,29 @@
1
+ version: 2
2
+ jobs:
3
+ build:
4
+ working_directory: ~/hodlmoon
5
+ docker:
6
+ - image: circleci/ruby:2.4.6
7
+ steps:
8
+ - checkout
9
+
10
+ # Restore Cached Dependencies
11
+ - type: cache-restore
12
+ name: Restore bundle cache
13
+ key: hodlmoon-{{ checksum "Gemfile.lock" }}
14
+
15
+ # Bundle install dependencies
16
+ - run: bundle install --path vendor/bundle
17
+
18
+ # Cache Dependencies
19
+ - type: cache-save
20
+ name: Store bundle cache
21
+ key: hodlmoon-{{ checksum "Gemfile.lock" }}
22
+ paths:
23
+ - vendor/bundle
24
+
25
+ # Run unit tests
26
+ - run: bundle exec rspec
27
+
28
+ # Run aruba tests
29
+ - run: bundle exec cucumber
data/.env.example ADDED
File without changes
data/.rubocop.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.3
2
+ TargetRubyVersion: 2.4
3
3
 
4
4
  Documentation:
5
5
  Enabled: false
data/Gemfile.lock CHANGED
@@ -1,52 +1,75 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- hodlmoon (0.1.3)
5
- httparty (~> 0.15.7)
4
+ hodlmoon (0.3.0)
5
+ httparty (= 0.18.0)
6
+ json (~> 2.6, >= 2.6.2)
7
+ launchy (~> 2.4.3)
6
8
  terminal-table (~> 1.8.0)
7
- thor (~> 0.20.0)
9
+ thor (>= 1.0, < 1.1)
8
10
 
9
11
  GEM
10
12
  remote: https://rubygems.org/
11
13
  specs:
12
- addressable (2.5.2)
13
- public_suffix (>= 2.0.2, < 4.0)
14
+ addressable (2.8.0)
15
+ public_suffix (>= 2.0.2, < 5.0)
16
+ aruba (1.0.4)
17
+ childprocess (>= 2.0, < 5.0)
18
+ contracts (~> 0.16.0)
19
+ cucumber (>= 2.4, < 6.0)
20
+ rspec-expectations (~> 3.4)
21
+ thor (~> 1.0)
14
22
  ast (2.4.0)
15
- coveralls (0.7.1)
16
- multi_json (~> 1.3)
17
- rest-client
18
- simplecov (>= 0.7)
19
- term-ansicolor
20
- thor
21
- crack (0.4.3)
22
- safe_yaml (~> 1.0.0)
23
+ backports (3.11.1)
24
+ builder (3.2.3)
25
+ childprocess (4.1.0)
26
+ coderay (1.1.3)
27
+ contracts (0.16.1)
28
+ crack (0.4.5)
29
+ rexml
30
+ cucumber (3.1.0)
31
+ builder (>= 2.1.2)
32
+ cucumber-core (~> 3.1.0)
33
+ cucumber-expressions (~> 5.0.4)
34
+ cucumber-wire (~> 0.0.1)
35
+ diff-lcs (~> 1.3)
36
+ gherkin (~> 5.0)
37
+ multi_json (>= 1.7.5, < 2.0)
38
+ multi_test (>= 0.1.2)
39
+ cucumber-core (3.1.0)
40
+ backports (>= 3.8.0)
41
+ cucumber-tag_expressions (~> 1.1.0)
42
+ gherkin (>= 5.0.0)
43
+ cucumber-expressions (5.0.13)
44
+ cucumber-tag_expressions (1.1.1)
45
+ cucumber-wire (0.0.1)
23
46
  diff-lcs (1.3)
24
- docile (1.1.5)
25
- domain_name (0.5.20170404)
26
- unf (>= 0.0.5, < 1.0.0)
27
- hashdiff (0.3.7)
28
- http-cookie (1.0.3)
29
- domain_name (~> 0.5)
30
- httparty (0.15.7)
47
+ gherkin (5.0.0)
48
+ hashdiff (1.0.1)
49
+ httparty (0.18.0)
50
+ mime-types (~> 3.0)
31
51
  multi_xml (>= 0.5.2)
32
- json (2.1.0)
33
- mime-types (3.1)
52
+ jaro_winkler (1.5.4)
53
+ json (2.6.2)
54
+ launchy (2.4.3)
55
+ addressable (~> 2.3)
56
+ method_source (1.0.0)
57
+ mime-types (3.4.1)
34
58
  mime-types-data (~> 3.2015)
35
- mime-types-data (3.2016.0521)
59
+ mime-types-data (3.2023.0218.1)
36
60
  multi_json (1.13.1)
61
+ multi_test (0.1.2)
37
62
  multi_xml (0.6.0)
38
- netrc (0.11.0)
39
- parallel (1.12.0)
40
- parser (2.4.0.2)
41
- ast (~> 2.3)
42
- powerpack (0.1.1)
43
- public_suffix (3.0.2)
63
+ parallel (1.19.1)
64
+ parser (2.6.5.0)
65
+ ast (~> 2.4.0)
66
+ pry (0.14.2)
67
+ coderay (~> 1.1)
68
+ method_source (~> 1.0)
69
+ public_suffix (4.0.7)
44
70
  rainbow (3.0.0)
45
- rake (10.5.0)
46
- rest-client (2.0.2)
47
- http-cookie (>= 1.0.2, < 2.0)
48
- mime-types (>= 1.16, < 4.0)
49
- netrc (~> 0.8)
71
+ rake (13.0.1)
72
+ rexml (3.2.5)
50
73
  rspec (3.7.0)
51
74
  rspec-core (~> 3.7.0)
52
75
  rspec-expectations (~> 3.7.0)
@@ -60,48 +83,42 @@ GEM
60
83
  diff-lcs (>= 1.2.0, < 2.0)
61
84
  rspec-support (~> 3.7.0)
62
85
  rspec-support (3.7.1)
63
- rubocop (0.52.1)
86
+ rspec_junit_formatter (0.4.1)
87
+ rspec-core (>= 2, < 4, != 2.12.0)
88
+ rubocop (0.78.0)
89
+ jaro_winkler (~> 1.5.1)
64
90
  parallel (~> 1.10)
65
- parser (>= 2.4.0.2, < 3.0)
66
- powerpack (~> 0.1)
91
+ parser (>= 2.6)
67
92
  rainbow (>= 2.2.2, < 4.0)
68
93
  ruby-progressbar (~> 1.7)
69
- unicode-display_width (~> 1.0, >= 1.0.1)
70
- ruby-progressbar (1.9.0)
71
- safe_yaml (1.0.4)
72
- simplecov (0.15.1)
73
- docile (~> 1.1.0)
74
- json (>= 1.8, < 3)
75
- simplecov-html (~> 0.10.0)
76
- simplecov-html (0.10.2)
77
- term-ansicolor (1.6.0)
78
- tins (~> 1.0)
94
+ unicode-display_width (>= 1.4.0, < 1.7)
95
+ ruby-progressbar (1.10.1)
79
96
  terminal-table (1.8.0)
80
97
  unicode-display_width (~> 1.1, >= 1.1.1)
81
- thor (0.20.0)
82
- tins (1.16.3)
83
- unf (0.1.4)
84
- unf_ext
85
- unf_ext (0.0.7.5)
86
- unicode-display_width (1.3.0)
87
- vcr (3.0.3)
88
- webmock (3.2.1)
98
+ thor (1.0.1)
99
+ unicode-display_width (1.6.1)
100
+ vcr (5.0.0)
101
+ webmock (3.8.3)
89
102
  addressable (>= 2.3.6)
90
103
  crack (>= 0.3.2)
91
- hashdiff
104
+ hashdiff (>= 0.4.0, < 2.0.0)
92
105
 
93
106
  PLATFORMS
94
107
  ruby
95
108
 
96
109
  DEPENDENCIES
97
- bundler (~> 1.16)
98
- coveralls (~> 0.7.1)
110
+ aruba (~> 1.0.0)
111
+ bundler (~> 1.17.3)
112
+ cucumber (>= 3.0)
99
113
  hodlmoon!
100
- rake (~> 10.0)
114
+ pry
115
+ rake (~> 13.0)
116
+ rexml (~> 3.2, >= 3.2.4)
101
117
  rspec (~> 3.0)
102
- rubocop (~> 0.52.1)
103
- vcr (~> 3.0.3)
104
- webmock (~> 3.2.1)
118
+ rspec_junit_formatter (~> 0.4.1)
119
+ rubocop (~> 0.78.0)
120
+ vcr (~> 5.0.0)
121
+ webmock (~> 3.8.0)
105
122
 
106
123
  BUNDLED WITH
107
- 1.16.1
124
+ 1.17.3
data/README.md CHANGED
@@ -4,7 +4,6 @@
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/hodlmoon.svg)](https://badge.fury.io/rb/hodlmoon)
6
6
  [![CircleCI](https://circleci.com/gh/richo225/hodlmoon/tree/master.svg?style=shield)](https://circleci.com/gh/richo225/hodlmoon/tree/master)
7
- [![Dependency Status](https://gemnasium.com/badges/github.com/richo225/hodlmoon.svg)](https://gemnasium.com/github.com/richo225/hodlmoon)
8
7
  [![Maintainability](https://api.codeclimate.com/v1/badges/c328ff2b6d581e5121fc/maintainability)](https://codeclimate.com/github/richo225/hodlmoon/maintainability)
9
8
  [![Coverage Status](https://coveralls.io/repos/github/richo225/hodlmoon/badge.svg?branch=circle)](https://coveralls.io/github/richo225/hodlmoon?branch=circle)
10
9
 
data/hodlmoon.gemspec CHANGED
@@ -1,10 +1,10 @@
1
-
2
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'hodlmoon/version'
5
4
 
6
5
  Gem::Specification.new do |spec|
7
- spec.name = 'hodlmoon'
6
+ spec.name = 'hodlmoon'
7
+ spec.required_ruby_version = Hodlmoon::RUBY_VERSION
8
8
  spec.version = Hodlmoon::VERSION
9
9
  spec.authors = ['Richard Bates']
10
10
  spec.email = ['richo225@gmail.com']
@@ -20,15 +20,21 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ['lib']
22
22
 
23
- spec.add_dependency 'httparty', '~> 0.15.7'
23
+ spec.add_dependency 'httparty', '0.18.0'
24
+ spec.add_dependency 'json', '~> 2.6', '>= 2.6.2'
25
+ spec.add_dependency 'launchy', '~> 2.4.3'
24
26
  spec.add_dependency 'terminal-table', '~> 1.8.0'
25
- spec.add_dependency 'thor', '~> 0.20.0'
27
+ spec.add_dependency 'thor', '>= 1.0', '< 1.1'
26
28
 
27
- spec.add_development_dependency 'bundler', '~> 1.16'
28
- spec.add_development_dependency 'coveralls', '~> 0.7.1'
29
- spec.add_development_dependency 'rake', '~> 10.0'
29
+ spec.add_development_dependency 'aruba', '~> 1.0.0'
30
+ spec.add_development_dependency 'bundler', '~> 1.17.3'
31
+ spec.add_development_dependency 'cucumber', '>= 3.0'
32
+ spec.add_development_dependency 'pry'
33
+ spec.add_development_dependency 'rake', '~> 13.0'
34
+ spec.add_development_dependency 'rexml', '~> 3.2', '>= 3.2.4'
30
35
  spec.add_development_dependency 'rspec', '~> 3.0'
31
- spec.add_development_dependency 'rubocop', '~> 0.52.1'
32
- spec.add_development_dependency 'vcr', '~> 3.0.3'
33
- spec.add_development_dependency 'webmock', '~> 3.2.1'
36
+ spec.add_development_dependency 'rspec_junit_formatter', '~> 0.4.1'
37
+ spec.add_development_dependency 'rubocop', '~> 0.78.0'
38
+ spec.add_development_dependency 'vcr', '~> 5.0.0'
39
+ spec.add_development_dependency 'webmock', '~> 3.8.0'
34
40
  end
data/lib/hodlmoon/cli.rb CHANGED
@@ -1,33 +1,93 @@
1
1
  require 'thor'
2
+ require 'launchy'
2
3
  require 'hodlmoon/client/retrieve_price'
3
4
  require 'hodlmoon/client/retrieve_list'
4
5
  require 'hodlmoon/table'
6
+ require 'hodlmoon/portfolio_manager'
5
7
 
6
8
  module Hodlmoon
7
9
  class Cli < Thor
8
10
  DEFAULT_LIMIT = 8
11
+ DEFAULT_CURRENCY = 'gbp'.freeze
12
+ COINSPECTATOR_URL = 'https://coinspectator.com/'.freeze
13
+ ETHTRADER_URL = 'https://www.reddit.com/r/ethtrader/'.freeze
14
+ DEFAULT_PORTFOLIO_PATH = '~/hodlmoon_portfolio'.freeze
9
15
 
10
- CURRENCY = {
11
- gbp: '£',
12
- usd: '$',
13
- eur: '€'
14
- }.freeze
16
+ def self.exit_on_failure?
17
+ true
18
+ end
15
19
 
16
20
  desc 'hello NAME', 'say hello to NAME'
17
21
  def hello(name)
18
- puts "Hello #{name}"
22
+ say "Hello #{name}"
23
+ end
24
+
25
+ desc 'version', 'Display hodlmoon version'
26
+ map %w(-v --version) => :version
27
+ def version
28
+ say "Hodlmoon #{VERSION}"
29
+ end
30
+
31
+ desc 'news', 'link to CoinSpectator'
32
+ map %w(-n --news) => :news
33
+ def news
34
+ Launchy.open(COINSPECTATOR_URL)
35
+ end
36
+
37
+ desc 'trader', 'link to r/EthTrader'
38
+ map %w(-t --trader) => :trader
39
+ def trader
40
+ Launchy.open(ETHTRADER_URL)
41
+ end
42
+
43
+ desc 'create_portfolio', 'create your coin portfolio'
44
+ def create_portfolio
45
+ say "Creating file at #{DEFAULT_PORTFOLIO}"
46
+ @coins = []
47
+ loop do
48
+ coin = ask("Please input your coins eg.'ethereum' :")
49
+ break if coin.empty?
50
+
51
+ @coins << coin
52
+ end
53
+ CSV.open(DEFAULT_PORTFOLIO_PATH, 'wb') do |csv|
54
+ csv << @coins
55
+ end
56
+ say 'Portfolio successfully created'
57
+ end
58
+
59
+ desc 'portfolio PATH CURRENCY', 'Get data for your portfolio at csv PATH'
60
+ map %w(-p --portfolio) => :portfolio
61
+ def portfolio(path, currency = DEFAULT_CURRENCY)
62
+ raise Error, set_color("No such file exists at #{path}", :red) unless File.exist?(path)
63
+
64
+ info = Hodlmoon::PortfolioManager.import_portfolio(path, currency)
65
+ puts Hodlmoon::Table.build(info, currency)
19
66
  end
20
67
 
21
68
  desc 'price COIN CURRENCY', 'get current price of COIN in CURRENCY(optional)'
22
- def price(coin, currency = 'gbp')
69
+ map %w(-p --price) => :price
70
+ def price(coin, currency = DEFAULT_CURRENCY)
23
71
  info = Hodlmoon::Client::RetrievePrice.call(coin, currency)
72
+ raise_info_error(info)
73
+
24
74
  puts Hodlmoon::Table.build(info, currency)
25
75
  end
26
76
 
27
77
  desc 'list LIMIT CURRENCY', 'get LIMIT of top coins in CURRENCY(optional)'
28
- def list(limit = DEFAULT_LIMIT, currency = 'gbp')
78
+ map %w(-l --list) => :list
79
+ def list(limit = DEFAULT_LIMIT, currency = DEFAULT_CURRENCY)
29
80
  info = Hodlmoon::Client::RetrieveList.call(limit, currency)
81
+ raise_info_error(info)
82
+
30
83
  puts Hodlmoon::Table.build(info, currency)
31
84
  end
85
+
86
+ private
87
+
88
+ def raise_info_error(info)
89
+ raise Error, set_color('Sorry, the rate limit has been exceeded', :red) if info.response.code == '429'
90
+ raise Error, set_color('Please input the full name of a valid coin.', :red) if !info.success? || info.empty?
91
+ end
32
92
  end
33
93
  end
@@ -10,7 +10,7 @@ module Hodlmoon
10
10
  end
11
11
 
12
12
  def call
13
- HTTParty.get(uri)
13
+ HTTParty.get(uri, format: :json)
14
14
  end
15
15
 
16
16
  private
@@ -10,7 +10,7 @@ module Hodlmoon
10
10
  private
11
11
 
12
12
  def uri
13
- "https://api.coinmarketcap.com/v1/ticker/?limit=#{@limit}&convert=#{@currency}"
13
+ "https://api.coingecko.com/api/v3/coins/markets?per_page=#{@limit}&vs_currency=#{@currency}"
14
14
  end
15
15
  end
16
16
  end
@@ -10,7 +10,7 @@ module Hodlmoon
10
10
  private
11
11
 
12
12
  def uri
13
- "https://api.coinmarketcap.com/v1/ticker/#{@coin}/?convert=#{@currency}"
13
+ "https://api.coingecko.com/api/v3/coins/markets?ids=#{@coin}&vs_currency=#{@currency}"
14
14
  end
15
15
  end
16
16
  end
@@ -0,0 +1,24 @@
1
+ module Hodlmoon
2
+ class PortfolioManager
3
+ def self.import_portfolio(path, currency)
4
+ new(path, currency).import_portfolio
5
+ end
6
+
7
+ def initialize(path, currency)
8
+ @path = path
9
+ @currency = currency
10
+ end
11
+
12
+ def import_portfolio
13
+ portfolio.map do |coin|
14
+ Hodlmoon::Client::RetrievePrice.call(coin, @currency)
15
+ end.flatten
16
+ end
17
+
18
+ private
19
+
20
+ def portfolio
21
+ CSV.read(@path).flatten
22
+ end
23
+ end
24
+ end
@@ -23,14 +23,13 @@ module Hodlmoon
23
23
  private
24
24
 
25
25
  def headings
26
- ['rank',
26
+ ['market_cap_rank',
27
27
  'name',
28
28
  'symbol',
29
- "price_#{@currency}",
30
- "market_cap_#{@currency}",
31
- 'percent_change_1h',
32
- 'percent_change_24h',
33
- 'percent_change_7d']
29
+ 'current_price',
30
+ 'market_cap',
31
+ 'price_change_percentage_24h',
32
+ 'ath_change_percentage']
34
33
  end
35
34
 
36
35
  def humanised_headings
@@ -45,7 +44,8 @@ module Hodlmoon
45
44
 
46
45
  def colorised_info
47
46
  filtered_info.map do |coin|
48
- coin.each_pair(&method(:colorise))
47
+ coin.transform_values!(&:to_s)
48
+ .each_pair { |k, v| colorise(k, v) }
49
49
  end
50
50
  end
51
51
 
@@ -59,8 +59,8 @@ module Hodlmoon
59
59
  return unless value
60
60
 
61
61
  case key
62
- when /price_.*/ then colorise_yellow(value)
63
- when /percent_change_.*/ then colorise_red_or_green(value)
62
+ when /_price_.*/ then colorise_yellow(value)
63
+ when /_percentage.*/ then colorise_red_or_green(value)
64
64
  end
65
65
  end
66
66
 
@@ -1,3 +1,4 @@
1
1
  module Hodlmoon
2
- VERSION = '0.1.3'.freeze
2
+ VERSION = '0.3.0'.freeze
3
+ RUBY_VERSION = '~>2.4.0'.freeze
3
4
  end
metadata CHANGED
@@ -1,29 +1,63 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hodlmoon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Bates
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-16 00:00:00.000000000 Z
11
+ date: 2023-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 0.18.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 0.18.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.6'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 2.6.2
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '2.6'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 2.6.2
47
+ - !ruby/object:Gem::Dependency
48
+ name: launchy
15
49
  requirement: !ruby/object:Gem::Requirement
16
50
  requirements:
17
51
  - - "~>"
18
52
  - !ruby/object:Gem::Version
19
- version: 0.15.7
53
+ version: 2.4.3
20
54
  type: :runtime
21
55
  prerelease: false
22
56
  version_requirements: !ruby/object:Gem::Requirement
23
57
  requirements:
24
58
  - - "~>"
25
59
  - !ruby/object:Gem::Version
26
- version: 0.15.7
60
+ version: 2.4.3
27
61
  - !ruby/object:Gem::Dependency
28
62
  name: terminal-table
29
63
  requirement: !ruby/object:Gem::Requirement
@@ -42,58 +76,112 @@ dependencies:
42
76
  name: thor
43
77
  requirement: !ruby/object:Gem::Requirement
44
78
  requirements:
45
- - - "~>"
79
+ - - ">="
46
80
  - !ruby/object:Gem::Version
47
- version: 0.20.0
81
+ version: '1.0'
82
+ - - "<"
83
+ - !ruby/object:Gem::Version
84
+ version: '1.1'
48
85
  type: :runtime
49
86
  prerelease: false
87
+ version_requirements: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: '1.0'
92
+ - - "<"
93
+ - !ruby/object:Gem::Version
94
+ version: '1.1'
95
+ - !ruby/object:Gem::Dependency
96
+ name: aruba
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: 1.0.0
102
+ type: :development
103
+ prerelease: false
50
104
  version_requirements: !ruby/object:Gem::Requirement
51
105
  requirements:
52
106
  - - "~>"
53
107
  - !ruby/object:Gem::Version
54
- version: 0.20.0
108
+ version: 1.0.0
55
109
  - !ruby/object:Gem::Dependency
56
110
  name: bundler
57
111
  requirement: !ruby/object:Gem::Requirement
58
112
  requirements:
59
113
  - - "~>"
60
114
  - !ruby/object:Gem::Version
61
- version: '1.16'
115
+ version: 1.17.3
62
116
  type: :development
63
117
  prerelease: false
64
118
  version_requirements: !ruby/object:Gem::Requirement
65
119
  requirements:
66
120
  - - "~>"
67
121
  - !ruby/object:Gem::Version
68
- version: '1.16'
122
+ version: 1.17.3
123
+ - !ruby/object:Gem::Dependency
124
+ name: cucumber
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ">="
128
+ - !ruby/object:Gem::Version
129
+ version: '3.0'
130
+ type: :development
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: '3.0'
137
+ - !ruby/object:Gem::Dependency
138
+ name: pry
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
144
+ type: :development
145
+ prerelease: false
146
+ version_requirements: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
69
151
  - !ruby/object:Gem::Dependency
70
- name: coveralls
152
+ name: rake
71
153
  requirement: !ruby/object:Gem::Requirement
72
154
  requirements:
73
155
  - - "~>"
74
156
  - !ruby/object:Gem::Version
75
- version: 0.7.1
157
+ version: '13.0'
76
158
  type: :development
77
159
  prerelease: false
78
160
  version_requirements: !ruby/object:Gem::Requirement
79
161
  requirements:
80
162
  - - "~>"
81
163
  - !ruby/object:Gem::Version
82
- version: 0.7.1
164
+ version: '13.0'
83
165
  - !ruby/object:Gem::Dependency
84
- name: rake
166
+ name: rexml
85
167
  requirement: !ruby/object:Gem::Requirement
86
168
  requirements:
87
169
  - - "~>"
88
170
  - !ruby/object:Gem::Version
89
- version: '10.0'
171
+ version: '3.2'
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: 3.2.4
90
175
  type: :development
91
176
  prerelease: false
92
177
  version_requirements: !ruby/object:Gem::Requirement
93
178
  requirements:
94
179
  - - "~>"
95
180
  - !ruby/object:Gem::Version
96
- version: '10.0'
181
+ version: '3.2'
182
+ - - ">="
183
+ - !ruby/object:Gem::Version
184
+ version: 3.2.4
97
185
  - !ruby/object:Gem::Dependency
98
186
  name: rspec
99
187
  requirement: !ruby/object:Gem::Requirement
@@ -108,48 +196,62 @@ dependencies:
108
196
  - - "~>"
109
197
  - !ruby/object:Gem::Version
110
198
  version: '3.0'
199
+ - !ruby/object:Gem::Dependency
200
+ name: rspec_junit_formatter
201
+ requirement: !ruby/object:Gem::Requirement
202
+ requirements:
203
+ - - "~>"
204
+ - !ruby/object:Gem::Version
205
+ version: 0.4.1
206
+ type: :development
207
+ prerelease: false
208
+ version_requirements: !ruby/object:Gem::Requirement
209
+ requirements:
210
+ - - "~>"
211
+ - !ruby/object:Gem::Version
212
+ version: 0.4.1
111
213
  - !ruby/object:Gem::Dependency
112
214
  name: rubocop
113
215
  requirement: !ruby/object:Gem::Requirement
114
216
  requirements:
115
217
  - - "~>"
116
218
  - !ruby/object:Gem::Version
117
- version: 0.52.1
219
+ version: 0.78.0
118
220
  type: :development
119
221
  prerelease: false
120
222
  version_requirements: !ruby/object:Gem::Requirement
121
223
  requirements:
122
224
  - - "~>"
123
225
  - !ruby/object:Gem::Version
124
- version: 0.52.1
226
+ version: 0.78.0
125
227
  - !ruby/object:Gem::Dependency
126
228
  name: vcr
127
229
  requirement: !ruby/object:Gem::Requirement
128
230
  requirements:
129
231
  - - "~>"
130
232
  - !ruby/object:Gem::Version
131
- version: 3.0.3
233
+ version: 5.0.0
132
234
  type: :development
133
235
  prerelease: false
134
236
  version_requirements: !ruby/object:Gem::Requirement
135
237
  requirements:
136
238
  - - "~>"
137
239
  - !ruby/object:Gem::Version
138
- version: 3.0.3
240
+ version: 5.0.0
139
241
  - !ruby/object:Gem::Dependency
140
242
  name: webmock
141
243
  requirement: !ruby/object:Gem::Requirement
142
244
  requirements:
143
245
  - - "~>"
144
246
  - !ruby/object:Gem::Version
145
- version: 3.2.1
247
+ version: 3.8.0
146
248
  type: :development
147
249
  prerelease: false
148
250
  version_requirements: !ruby/object:Gem::Requirement
149
251
  requirements:
150
252
  - - "~>"
151
253
  - !ruby/object:Gem::Version
152
- version: 3.2.1
254
+ version: 3.8.0
153
255
  description: A command line tool for crytocurrency data. When moon?
154
256
  email:
155
257
  - richo225@gmail.com
@@ -158,10 +260,11 @@ executables:
158
260
  extensions: []
159
261
  extra_rdoc_files: []
160
262
  files:
263
+ - ".circleci/config.yml"
264
+ - ".env.example"
161
265
  - ".gitignore"
162
266
  - ".rspec"
163
267
  - ".rubocop.yml"
164
- - ".travis.yml"
165
268
  - CODE_OF_CONDUCT.md
166
269
  - Gemfile
167
270
  - Gemfile.lock
@@ -175,30 +278,30 @@ files:
175
278
  - lib/hodlmoon/client/base.rb
176
279
  - lib/hodlmoon/client/retrieve_list.rb
177
280
  - lib/hodlmoon/client/retrieve_price.rb
281
+ - lib/hodlmoon/portfolio_manager.rb
178
282
  - lib/hodlmoon/table.rb
179
283
  - lib/hodlmoon/version.rb
180
284
  homepage: https://github.com/richo225/hodlmoon
181
285
  licenses:
182
286
  - MIT
183
287
  metadata: {}
184
- post_install_message:
288
+ post_install_message:
185
289
  rdoc_options: []
186
290
  require_paths:
187
291
  - lib
188
292
  required_ruby_version: !ruby/object:Gem::Requirement
189
293
  requirements:
190
- - - ">="
294
+ - - "~>"
191
295
  - !ruby/object:Gem::Version
192
- version: '0'
296
+ version: 2.4.0
193
297
  required_rubygems_version: !ruby/object:Gem::Requirement
194
298
  requirements:
195
299
  - - ">="
196
300
  - !ruby/object:Gem::Version
197
301
  version: '0'
198
302
  requirements: []
199
- rubyforge_project:
200
- rubygems_version: 2.6.14
201
- signing_key:
303
+ rubygems_version: 3.2.3
304
+ signing_key:
202
305
  specification_version: 4
203
306
  summary: A command line tool for crytocurrency data. When moon?
204
307
  test_files: []
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.6
5
- before_install: gem install bundler -v 1.16.1