emotion-picker 0.3.0 → 0.4.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: 6dc1f0f67e1065f9b19ab588414b8dc0fe2a68aa
4
- data.tar.gz: dd2ba5a43592fc8f02873c36f3febaa521e3d76d
2
+ SHA256:
3
+ metadata.gz: 4923405e10668de1aaf6294877ff11eed21b101f1fb02f01ade6ac062231c450
4
+ data.tar.gz: 13358d81e9e3dfbb7b6abf5db3b8dcaa9f211d971c2cc285449f9d8174277946
5
5
  SHA512:
6
- metadata.gz: c0b0baafc48608f60e5c9154b8febd3ff4d93e335120eadcb982acbd47b55456ae7805b3c560d7b2e203131b4544035a0847b98c611cace7a8bb9adcb7bc1338
7
- data.tar.gz: 456ec47422a2069b1e5e273b4569a2d774a1932886fc9a3a591ef295487f00e3abebbf082cdcdffc603a1853b7ee1c91752fcdcb4e0fd0a4ebf332600a95c0e4
6
+ metadata.gz: 7a763e6c73b70d27930ebd066adf4c2304aee6cc51de90f06f9059a51ad9f14f9ee687ae809b1d4ee7a3033a3911f3b44fe823aff5d48bab35acdc4012efde93
7
+ data.tar.gz: 18689ca949dfaff5ec532469942bb5533cbd3a6c3081ad128a845de9559dc3ce313fbc24c200b2cda2eb0c8342bcc24feb1a8d5ae379e46a57a2f633e59a51e9
data/LICENSE CHANGED
File without changes
@@ -3,27 +3,9 @@
3
3
 
4
4
  require 'emotion/picker'
5
5
  require 'nice-sigint'
6
- require 'optparse'
7
6
 
8
- parser = OptionParser.new do |opts|
9
- opts.banner = 'Usage: emotion-picker [-hv]'
7
+ options_parser = Emotion::Picker::Cli.new
8
+ emotions_picker = Emotion::Picker::EmotionPicker.new
10
9
 
11
- opts.on('-h', '--help', 'Prints this help') do
12
- puts opts
13
- exit
14
- end
15
-
16
- opts.on('-v', '--version', 'Prints program version') do
17
- puts Emotion::Picker::VERSION
18
- exit
19
- end
20
- end
21
-
22
- begin
23
- parser.parse!
24
- rescue OptionParser::ParseError => e
25
- warn e.message
26
- abort parser.to_s
27
- end
28
-
29
- puts "You are feeling #{Emotion::Picker.pick}"
10
+ options_parser.parse!(ARGV)
11
+ puts "You are feeling #{emotions_picker.pick}"
@@ -1,5 +1,5 @@
1
1
  - name: Abandoned
2
- description: An emotional state in which people feel discarted, undesired, left behind
2
+ description: A state in which people feel discarted, undesired, left behind
3
3
 
4
4
  - name: Fear of Abandonment
5
5
  description: An irrational belief that one is in imminent danger of being personally rejected, discarded or replaced
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'emotion/picker/version'
4
- require 'emotion/picker/emotion'
5
3
  require 'yaml'
6
4
 
7
5
  module Emotion
@@ -9,6 +7,10 @@ module Emotion
9
7
  EMOTIONS_FILE = "#{__dir__}/emotions.yml"
10
8
  private_constant :EMOTIONS_FILE
11
9
 
10
+ autoload :Emotion, 'emotion/picker/emotion'
11
+ autoload :Cli, 'emotion/picker/cli'
12
+ autoload :VERSION, 'emotion/picker/version'
13
+
12
14
  # Class for choosing an emotion
13
15
  class EmotionPicker
14
16
  def initialize
@@ -19,7 +21,7 @@ module Emotion
19
21
  # @return [Emotion]
20
22
  def pick
21
23
  rand = Random.new
22
- index = rand.rand(0..@emotions.length)
24
+ index = rand.rand(0...@emotions.length)
23
25
  @emotions[index]
24
26
  end
25
27
 
@@ -39,12 +41,5 @@ module Emotion
39
41
  emotions
40
42
  end
41
43
  end
42
-
43
- # Shortcut method for getting a random emotion
44
- # @return [Emotion]
45
- def self.pick
46
- picker = EmotionPicker.new
47
- picker.pick
48
- end
49
44
  end
50
45
  end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'optparse'
4
+
5
+ module Emotion
6
+ module Picker
7
+ class Cli
8
+ # @param args[Array]
9
+ def parse!(args)
10
+ parser = OptionParser.new do |opts|
11
+ opts.banner = 'Usage: emotion-picker [-hv]'
12
+
13
+ opts.on('-h', '--help', 'Prints this help') do
14
+ puts opts
15
+ exit
16
+ end
17
+
18
+ opts.on('-v', '--version', 'Prints program version') do
19
+ puts VERSION
20
+ exit
21
+ end
22
+ end
23
+
24
+ begin
25
+ parser.parse!(args)
26
+ rescue OptionParser::ParseError => e
27
+ warn e.message
28
+ abort parser.to_s
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
File without changes
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Emotion
4
4
  module Picker
5
- VERSION = '0.3.0'
5
+ VERSION = '0.4.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: emotion-picker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Birmingham
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-21 00:00:00.000000000 Z
11
+ date: 2019-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nice-sigint
@@ -38,34 +38,6 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.17'
41
- - !ruby/object:Gem::Dependency
42
- name: minitest
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '5.0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '5.0'
55
- - !ruby/object:Gem::Dependency
56
- name: rake
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '10.0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '10.0'
69
41
  description: Program for picking a random emotion
70
42
  email:
71
43
  - chris.birmingham@hotmail.co.uk
@@ -78,6 +50,7 @@ files:
78
50
  - bin/emotion-picker
79
51
  - lib/emotion/emotions.yml
80
52
  - lib/emotion/picker.rb
53
+ - lib/emotion/picker/cli.rb
81
54
  - lib/emotion/picker/emotion.rb
82
55
  - lib/emotion/picker/version.rb
83
56
  homepage: https://github.com/chrisBirmingham/emotion-picker
@@ -99,8 +72,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
72
  - !ruby/object:Gem::Version
100
73
  version: '0'
101
74
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.2.5
75
+ rubygems_version: 3.0.3
104
76
  signing_key:
105
77
  specification_version: 4
106
78
  summary: Emotion Picker