hodlmoon 0.2.0 → 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
2
  SHA256:
3
- metadata.gz: 8771ab4e4103ce9e190ca1976dd845352ec30ce26a56a09c13a125d141bc7259
4
- data.tar.gz: 34e24561353fb87eb12edeb0e948804861de19e5414df390a399aecf4b733eef
3
+ metadata.gz: 371d9a1a103e8cac35ae7f9a69c8df500c4b547c77605c3283a8bbe34530847d
4
+ data.tar.gz: 3dde2330b14504d02221ed06846aaaf003fffdc49a26932f8dd3a1e778b08b40
5
5
  SHA512:
6
- metadata.gz: 7597bf001d1649cdd94ff1d39081f89d1611b6b3b4231f486e3056b0e86510a1c23fbd8646b29a488925e8fc6475aa1557a4460b28e5f121b6ced3caa919282a
7
- data.tar.gz: 331ce9d65f567e09e3d1f12fc38ed37b970d004dc40e5ae122c809e087185e693f4647e9b4c93d2eef83e805049fc1b30f5463ab98b1b2a3c6472b2e73b5cc4c
6
+ metadata.gz: fe11ac03940ca6f5e9bfccdb8c2a72a1db843877d841af47dbac9c01d7f22bcb01355b24433b9fbc61eb3f39c042dfc7fd8522ff31977cdab8ec723f4b0dc2e0
7
+ data.tar.gz: 02a8ef3f59f976befd640b65644de6921f147e77bbd1e075c1ceb4bda7ae3c0ade395f4c932f07df711b25e180bcf32f402f02fc098d64711af2e38163e2a11a
data/.circleci/config.yml CHANGED
@@ -3,7 +3,7 @@ jobs:
3
3
  build:
4
4
  working_directory: ~/hodlmoon
5
5
  docker:
6
- - image: circleci/ruby:2.3.6
6
+ - image: circleci/ruby:2.4.6
7
7
  steps:
8
8
  - checkout
9
9
 
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,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- hodlmoon (0.2.0)
4
+ hodlmoon (0.3.0)
5
5
  httparty (= 0.18.0)
6
6
  json (~> 2.6, >= 2.6.2)
7
7
  launchy (~> 2.4.3)
@@ -23,6 +23,7 @@ GEM
23
23
  backports (3.11.1)
24
24
  builder (3.2.3)
25
25
  childprocess (4.1.0)
26
+ coderay (1.1.3)
26
27
  contracts (0.16.1)
27
28
  crack (0.4.5)
28
29
  rexml
@@ -52,15 +53,19 @@ GEM
52
53
  json (2.6.2)
53
54
  launchy (2.4.3)
54
55
  addressable (~> 2.3)
56
+ method_source (1.0.0)
55
57
  mime-types (3.4.1)
56
58
  mime-types-data (~> 3.2015)
57
- mime-types-data (3.2022.0105)
59
+ mime-types-data (3.2023.0218.1)
58
60
  multi_json (1.13.1)
59
61
  multi_test (0.1.2)
60
62
  multi_xml (0.6.0)
61
63
  parallel (1.19.1)
62
64
  parser (2.6.5.0)
63
65
  ast (~> 2.4.0)
66
+ pry (0.14.2)
67
+ coderay (~> 1.1)
68
+ method_source (~> 1.0)
64
69
  public_suffix (4.0.7)
65
70
  rainbow (3.0.0)
66
71
  rake (13.0.1)
@@ -93,26 +98,27 @@ GEM
93
98
  thor (1.0.1)
94
99
  unicode-display_width (1.6.1)
95
100
  vcr (5.0.0)
96
- webmock (3.5.1)
101
+ webmock (3.8.3)
97
102
  addressable (>= 2.3.6)
98
103
  crack (>= 0.3.2)
99
- hashdiff
104
+ hashdiff (>= 0.4.0, < 2.0.0)
100
105
 
101
106
  PLATFORMS
102
107
  ruby
103
108
 
104
109
  DEPENDENCIES
105
110
  aruba (~> 1.0.0)
106
- bundler (~> 1.16)
111
+ bundler (~> 1.17.3)
107
112
  cucumber (>= 3.0)
108
113
  hodlmoon!
114
+ pry
109
115
  rake (~> 13.0)
110
116
  rexml (~> 3.2, >= 3.2.4)
111
117
  rspec (~> 3.0)
112
118
  rspec_junit_formatter (~> 0.4.1)
113
119
  rubocop (~> 0.78.0)
114
120
  vcr (~> 5.0.0)
115
- webmock (~> 3.5.0)
121
+ webmock (~> 3.8.0)
116
122
 
117
123
  BUNDLED WITH
118
124
  1.17.3
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']
@@ -27,13 +27,14 @@ Gem::Specification.new do |spec|
27
27
  spec.add_dependency 'thor', '>= 1.0', '< 1.1'
28
28
 
29
29
  spec.add_development_dependency 'aruba', '~> 1.0.0'
30
- spec.add_development_dependency 'bundler', '~> 1.16'
30
+ spec.add_development_dependency 'bundler', '~> 1.17.3'
31
31
  spec.add_development_dependency 'cucumber', '>= 3.0'
32
+ spec.add_development_dependency 'pry'
32
33
  spec.add_development_dependency 'rake', '~> 13.0'
33
34
  spec.add_development_dependency 'rexml', '~> 3.2', '>= 3.2.4'
34
35
  spec.add_development_dependency 'rspec', '~> 3.0'
35
36
  spec.add_development_dependency 'rspec_junit_formatter', '~> 0.4.1'
36
37
  spec.add_development_dependency 'rubocop', '~> 0.78.0'
37
38
  spec.add_development_dependency 'vcr', '~> 5.0.0'
38
- spec.add_development_dependency 'webmock', '~> 3.5.0'
39
+ spec.add_development_dependency 'webmock', '~> 3.8.0'
39
40
  end
data/lib/hodlmoon/cli.rb CHANGED
@@ -69,7 +69,7 @@ module Hodlmoon
69
69
  map %w(-p --price) => :price
70
70
  def price(coin, currency = DEFAULT_CURRENCY)
71
71
  info = Hodlmoon::Client::RetrievePrice.call(coin, currency)
72
- raise Error, set_color('Please input the full name of a valid coin.', :red) unless info.success?
72
+ raise_info_error(info)
73
73
 
74
74
  puts Hodlmoon::Table.build(info, currency)
75
75
  end
@@ -78,7 +78,16 @@ module Hodlmoon
78
78
  map %w(-l --list) => :list
79
79
  def list(limit = DEFAULT_LIMIT, currency = DEFAULT_CURRENCY)
80
80
  info = Hodlmoon::Client::RetrieveList.call(limit, currency)
81
+ raise_info_error(info)
82
+
81
83
  puts Hodlmoon::Table.build(info, currency)
82
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
83
92
  end
84
93
  end
@@ -10,7 +10,7 @@ module Hodlmoon
10
10
  private
11
11
 
12
12
  def uri
13
- "https://api.coingecko.com/api/v3/coins/#{@coin}?community_data=false&developer_data=false&localization=false"
13
+ "https://api.coingecko.com/api/v3/coins/markets?ids=#{@coin}&vs_currency=#{@currency}"
14
14
  end
15
15
  end
16
16
  end
@@ -1,3 +1,4 @@
1
1
  module Hodlmoon
2
- VERSION = '0.2.0'.freeze
2
+ VERSION = '0.3.0'.freeze
3
+ RUBY_VERSION = '~>2.4.0'.freeze
3
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hodlmoon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Bates
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-08-02 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
@@ -112,14 +112,14 @@ dependencies:
112
112
  requirements:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
- version: '1.16'
115
+ version: 1.17.3
116
116
  type: :development
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: '1.16'
122
+ version: 1.17.3
123
123
  - !ruby/object:Gem::Dependency
124
124
  name: cucumber
125
125
  requirement: !ruby/object:Gem::Requirement
@@ -134,6 +134,20 @@ dependencies:
134
134
  - - ">="
135
135
  - !ruby/object:Gem::Version
136
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'
137
151
  - !ruby/object:Gem::Dependency
138
152
  name: rake
139
153
  requirement: !ruby/object:Gem::Requirement
@@ -230,14 +244,14 @@ dependencies:
230
244
  requirements:
231
245
  - - "~>"
232
246
  - !ruby/object:Gem::Version
233
- version: 3.5.0
247
+ version: 3.8.0
234
248
  type: :development
235
249
  prerelease: false
236
250
  version_requirements: !ruby/object:Gem::Requirement
237
251
  requirements:
238
252
  - - "~>"
239
253
  - !ruby/object:Gem::Version
240
- version: 3.5.0
254
+ version: 3.8.0
241
255
  description: A command line tool for crytocurrency data. When moon?
242
256
  email:
243
257
  - richo225@gmail.com
@@ -277,9 +291,9 @@ require_paths:
277
291
  - lib
278
292
  required_ruby_version: !ruby/object:Gem::Requirement
279
293
  requirements:
280
- - - ">="
294
+ - - "~>"
281
295
  - !ruby/object:Gem::Version
282
- version: '0'
296
+ version: 2.4.0
283
297
  required_rubygems_version: !ruby/object:Gem::Requirement
284
298
  requirements:
285
299
  - - ">="