runby_pace 0.2.59 → 0.2.60

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.
Files changed (3) hide show
  1. checksums.yaml +8 -8
  2. data/lib/runby_pace/pace_time.rb +30 -6
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZmIwODgyNDJjZmQ4ZGJhZGE0ZDVhNGM1OTllYWM3OWJlMGY5MmQyOQ==
4
+ MGEzNDliZTk3MjYwZmYzZmE5NGU5ZTMzMjMxMmVmZThhZDE5NjViYQ==
5
5
  data.tar.gz: !binary |-
6
- MzJiYzc0OTE4ZGU5NjA4MDc5NDg3MmFlMjk5MmE1NWU1MTFmNDBkOQ==
6
+ MmE0Y2I0YzE4OGI4Y2EzMmM4Yzg1YjE1MTZjMjA3NDBhYTg5MGNmMg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MmFkN2UxNzAxN2E1OWQ4NWU3MTQwNjJlMWExZWE0NTMxYWU4Y2Y1YTU0ZGQ4
10
- Njk2NTExMWU3ODBhOTQ2MjE1MTNmNzA2YzNmMzYzZmE3OGE0NWZlM2E1OTY3
11
- N2I1NTBiY2MzYTZhYTc3MDY1ZDE2N2UwMTg5YjAyNTNlMzc5MjA=
9
+ YWE3ZDVmNDViOGJlZmYwYTM5NWU3ZWQyM2JhMjQ0NWZiNzlmYjgyYzliYWRl
10
+ MTE0MjExMTMwNmM1ODk4YWRjMmM3ODlhY2FjYTZiMzMzZTlkODVhOWRhODE0
11
+ NjY1MmRkMWY4NmI2NWIyZDQwODBmNjNjMDQ2ZmYxYzcwODJlZWU=
12
12
  data.tar.gz: !binary |-
13
- M2YzNWJiN2Y1Y2Y1MDY4MmM2YTJhNmRkNmQzNjZlOTRiZjZjYmIzNmRkZThi
14
- OTMxZjE5MjA3Y2Q3ZTA3NzE4ODNhZTU1ZjJmYzFhMmRkOWRjNzNkOGZkYzMz
15
- NWFkMGM4YThhZTVmNzc4NGMyNTY4NTdmNjY1MzU3NmQ1YTE3Y2Y=
13
+ Y2NlYmQxM2FjZGQ5MzcwZmU5MDVjMDljODk5NjM0ZTAyMmM5NDYwZTRjYWU1
14
+ NTA5NThjYzcxOTU0MmMzZmE2NTI5ZWZjOTA4YWQ2YjJiMTUwYTQ1MzFiYmEw
15
+ ZGM0MmE3MjJmNjE4MGY0OGE3ODY1MmQ1NzI3MjQyNDFhM2JjYTM=
@@ -92,12 +92,36 @@ module RunbyPace
92
92
  private
93
93
 
94
94
  def init_from_string(time)
95
- raise 'Invalid time format' if !time.match(/(-)?\d?\d:\d\d/)
96
- @time_s = time.to_s
97
- parts = time.to_s.split(':')
98
- @minutes_part = parts[0].to_i
99
- @seconds_part = parts[1].to_i
100
- raise 'Seconds must be less than 60' if @seconds_part.abs > 59
95
+ time = time.to_s.strip.chomp
96
+ is_negative = false
97
+
98
+ if time[0] == '-'
99
+ is_negative = true
100
+ time = time[1..-1]
101
+ end
102
+
103
+ if time.match(/^\d?\d:\d\d$/)
104
+ parts = time.split(':')
105
+ @minutes_part = parts[0].to_i
106
+ @seconds_part = parts[1].to_i
107
+ elsif time.match(/^\d+$/)
108
+ @minutes_part = time.to_i
109
+ @seconds_part = 0
110
+ elsif time.match(/^\d+[,\. ]\d+$/)
111
+ parts = time.split(/[,\. ]/)
112
+ @minutes_part = parts[0].to_i
113
+ @seconds_part = (parts[1].to_i / 10.0 * 60).to_i
114
+ else
115
+ raise 'Invalid time format'
116
+ end
117
+
118
+ raise 'Minutes must be less than 100' if @minutes_part > 99
119
+ raise 'Seconds must be less than 60' if @seconds_part > 59
120
+ if is_negative
121
+ @minutes_part *= -1
122
+ @seconds_part *= -1
123
+ end
124
+ @time_s = "#{@minutes_part.to_s.rjust(2, '0')}:#{@seconds_part.to_s.rjust(2, '0')}"
101
125
  end
102
126
 
103
127
  # @param [PaceTime] time
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runby_pace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.59
4
+ version: 0.2.60
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ty Walls
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-07-08 00:00:00.000000000 Z
11
+ date: 2016-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -91,7 +91,7 @@ homepage: https://github.com/tygerbytes/runby-pace
91
91
  licenses:
92
92
  - MIT
93
93
  metadata:
94
- commit-hash: 1a758c314e77d3f80324ab77bb2b23baa9bb05bf
94
+ commit-hash: 5956578952d079e9c18e45869a7562903d56f6ea
95
95
  post_install_message:
96
96
  rdoc_options: []
97
97
  require_paths: