run 0.1.2 → 0.1.3

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: 8f9c6f6ba4fc26aaf2318d02898e7bde47f74c71ae2f17c656b9877f939ddedc
4
- data.tar.gz: 66c092630626dfbe12a8bce7531f1e890cd1825d2093193521fffccec71a8333
3
+ metadata.gz: 45ec4b5493c150c19563df34c45caf60532084bbe82176e1ba1a05034f0177b0
4
+ data.tar.gz: 37df65c26811b3724c0920ec8aba4b087a847b387585e263c962896229f4cdae
5
5
  SHA512:
6
- metadata.gz: a43e218dd3b40650c767d03baaef6dd0ff067ecd14eaaef034604a64bb516f1f826fe202f2e613b081db0bc518185ecdfb70a57dad0e941e8dd6ca4bbb7e21c1
7
- data.tar.gz: 648ba6b86743aafb8d0a9c4d579d2a119aed9aaefc467fdb16235933c315d38a341b6d1b0ad48660bd63e7c082d8f1b18f10b6d8e1bfed01c045a16cd590afd9
6
+ metadata.gz: f4df88cd4cac61ed716d63638641465d5bd7fbe6cc5523145c97ad13281139d90652ce2f01dcc4572ba71b24b74af775eac1d4862c404f8181665f1c8e9e7ada
7
+ data.tar.gz: a4079a328481e8e426e4ca7e6720be17c7b2781fd27fa36594f16fea2ea68799f6e57a5e1757754a59ef0de072235c75655bb40d208023a2993acf8496d9271d
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- run (0.1.2)
4
+ run (0.1.3)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -10,21 +10,13 @@ GEM
10
10
  benchmark-ips (2.7.2)
11
11
  builder (3.2.4)
12
12
  byebug (11.0.1)
13
- hpricot (0.8.6)
14
13
  minitest (5.13.0)
15
14
  minitest-reporters (1.3.8)
16
15
  ansi
17
16
  builder
18
17
  minitest (>= 5.0)
19
18
  ruby-progressbar
20
- mustache (1.1.0)
21
- rake (10.5.0)
22
- rdiscount (2.2.0.1)
23
- ronn (0.7.3)
24
- hpricot (>= 0.8.2)
25
- mustache (>= 0.7.0)
26
- rdiscount (>= 1.5.8)
27
- ruby-prof (1.0.0)
19
+ rake (13.0.1)
28
20
  ruby-progressbar (1.10.1)
29
21
 
30
22
  PLATFORMS
@@ -36,9 +28,7 @@ DEPENDENCIES
36
28
  byebug (~> 11.0.1)
37
29
  minitest (~> 5.0)
38
30
  minitest-reporters (~> 1.3.8)
39
- rake (~> 10.0)
40
- ronn (~> 0.7)
41
- ruby-prof
31
+ rake (~> 13.0.1)
42
32
  run!
43
33
 
44
34
  BUNDLED WITH
data/lib/run.rb CHANGED
@@ -1,10 +1,15 @@
1
1
  require 'io/console'
2
2
  require 'run/version'
3
3
  require 'yaml'
4
- require 'byebug'
5
4
 
6
5
  class RunError < StandardError; end
7
6
 
7
+ class Array
8
+ def average
9
+ (reduce(:+).to_f/size).round(2)
10
+ end
11
+ end
12
+
8
13
  module Run
9
14
  extend self
10
15
 
@@ -41,6 +46,7 @@ module Run
41
46
  break if @line==@lines.size-1 and pos==@lines.last.size
42
47
  end
43
48
 
49
+ save_wpm
44
50
  puts "\nWPM: #{wpm}"
45
51
  end
46
52
 
@@ -60,6 +66,7 @@ module Run
60
66
  def parse_options(args)
61
67
  if args.first=='-s'
62
68
  stats
69
+ exit
63
70
  end
64
71
 
65
72
  if args.first=='-q'
@@ -76,10 +83,14 @@ module Run
76
83
  bye
77
84
  rescue => e
78
85
  "Bad options. For help: `run -h`"
86
+ exit
79
87
  end
80
88
 
81
89
  def stats
82
- bye
90
+ str=File.open(wpm_file).read
91
+ scores=str.split(" ").map(&:to_i).select.with_index{|e,i| i.odd?}
92
+ puts "Number of races: #{str.count("\n")}"
93
+ puts "Average speed: #{scores.average}WPM"
83
94
  end
84
95
 
85
96
  def time
@@ -90,6 +101,16 @@ module Run
90
101
  @lines.join(' ').size*60/((time-@start_time)*@word_length)
91
102
  end
92
103
 
104
+ def wpm_file
105
+ "#{ENV['HOME']}/.wpm_history"
106
+ end
107
+
108
+ def save_wpm
109
+ open(wpm_file,'a') do |f|
110
+ f.puts "#{Time.now.strftime("%Y-%M-%d")} #{wpm}"
111
+ end
112
+ end
113
+
93
114
  def quotes
94
115
  YAML.load(open(quotes_file))
95
116
  .sort_by(&:length)
@@ -1,3 +1,3 @@
1
1
  module Run
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
@@ -23,13 +23,11 @@ Gem::Specification.new do |spec|
23
23
  spec.require_paths = ["lib"]
24
24
 
25
25
  spec.add_development_dependency "bundler", "~> 2.0"
26
- spec.add_development_dependency "rake", "~> 10.0"
26
+ spec.add_development_dependency "rake", "~> 13.0.1"
27
27
  spec.add_development_dependency "benchmark-ips", ">= 0"
28
28
  spec.add_development_dependency "byebug", "~> 11.0.1"
29
29
  spec.add_development_dependency "minitest", "~> 5.0"
30
30
  spec.add_development_dependency "minitest-reporters", "~> 1.3.8"
31
- spec.add_development_dependency "ronn", "~> 0.7"
32
- spec.add_development_dependency "ruby-prof", ">= 0"
33
31
 
34
32
  #spec.add_runtime_dependency "SOME_GEM", "~> VERSION"
35
33
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: run
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - sergioro
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: 13.0.1
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: 13.0.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: benchmark-ips
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,34 +94,6 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 1.3.8
97
- - !ruby/object:Gem::Dependency
98
- name: ronn
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '0.7'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '0.7'
111
- - !ruby/object:Gem::Dependency
112
- name: ruby-prof
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
97
  description: Increase typing speed and keep track of WPM history
126
98
  email:
127
99
  - yo@sergioro.com