calcpace 0.1.0 → 0.2.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 +4 -4
- data/test/calcpace/test_calculator.rb +40 -0
- data/test/calcpace/test_checker.rb +32 -0
- data/test/calcpace/test_converter.rb +24 -0
- metadata +103 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b4525dc354de18e5ae106e84f2628eb649a28457deff01f9a4ecdf692a210d81
|
4
|
+
data.tar.gz: b16f270b98de14001122a466d2d19d11e5316262ef5319944c25ac236ac56615
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7827da6cf956685513b3f56728a9475f9d5d5843ea2808b51a9a83800787779e71d4417c45d4e03779e6eb077a3158b1ca19c841c1ded861682ac8fa8f72beab
|
7
|
+
data.tar.gz: e17f9a94e680266f856fe94d36c57cea4988d10c4941dd415af7e0efe5b52d801a2e4721dd8758a2ae1d0228685f4c6a27208fad462b6a1d081e384152bbd248
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'minitest/autorun'
|
4
|
+
require_relative '../../lib/calcpace'
|
5
|
+
|
6
|
+
class TestCalculator < Minitest::Test
|
7
|
+
def setup
|
8
|
+
@checker = Calcpace.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_pace
|
12
|
+
assert_raises(RuntimeError) { @checker.pace('', 10) }
|
13
|
+
assert_raises(RuntimeError) { @checker.pace('invalid', 10) }
|
14
|
+
assert_raises(RuntimeError) { @checker.pace('00:00:00', 0) }
|
15
|
+
assert_raises(RuntimeError) { @checker.pace('00:00:00', -1) }
|
16
|
+
assert_equal '00:06:00', @checker.pace('01:00:00', 10)
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_total_time
|
20
|
+
assert_raises(RuntimeError) { @checker.total_time('', 10) }
|
21
|
+
assert_raises(RuntimeError) { @checker.total_time('invalid', 10) }
|
22
|
+
assert_raises(RuntimeError) { @checker.total_time('00:00:00', 0) }
|
23
|
+
assert_raises(RuntimeError) { @checker.total_time('00:00:00', -1) }
|
24
|
+
assert_equal '01:00:00', @checker.total_time('00:05:00', 12)
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_distance
|
28
|
+
assert_raises(RuntimeError) { @checker.distance('', '00:05:00') }
|
29
|
+
assert_raises(RuntimeError) { @checker.distance('01:00:00', '') }
|
30
|
+
assert_equal 18.0, @checker.distance('01:30:00', '00:05:00')
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_convert_distance
|
34
|
+
assert_raises(RuntimeError) { @checker.convert_distance(10, 'invalid') }
|
35
|
+
assert_raises(RuntimeError) { @checker.convert_distance(-1, 'km') }
|
36
|
+
assert_raises(RuntimeError) { @checker.convert_distance(0, 'km') }
|
37
|
+
assert_equal 6.21, @checker.convert_distance(10, 'km')
|
38
|
+
assert_equal 16.09, @checker.convert_distance(10, 'mi')
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'minitest/autorun'
|
4
|
+
require_relative '../../lib/calcpace'
|
5
|
+
|
6
|
+
class TestChecker < Minitest::Test
|
7
|
+
def setup
|
8
|
+
@checker = Calcpace.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_check_digits_distance
|
12
|
+
assert_raises(RuntimeError) { @checker.check_digits_distance(-1) }
|
13
|
+
assert_raises(RuntimeError) { @checker.check_digits_distance(0) }
|
14
|
+
assert_nil @checker.check_digits_distance(1)
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_check_digits_time
|
18
|
+
assert_raises(RuntimeError) { @checker.check_digits_time('') }
|
19
|
+
assert_nil @checker.check_digits_time('00:00:00')
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_check_digits
|
23
|
+
assert_raises(RuntimeError) { @checker.check_digits('00:00:00', 0) }
|
24
|
+
assert_raises(RuntimeError) { @checker.check_digits('', 1) }
|
25
|
+
assert_nil @checker.check_digits('00:00:00', 1)
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_convert
|
29
|
+
assert_equal 6.21, @checker.convert(10, 'km')
|
30
|
+
assert_equal 16.09, @checker.convert(10, 'mi')
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'minitest/autorun'
|
4
|
+
require_relative '../../lib/calcpace'
|
5
|
+
|
6
|
+
class TestConverter < Minitest::Test
|
7
|
+
def setup
|
8
|
+
@checker = Calcpace.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_convert_to_seconds
|
12
|
+
assert_equal 4262, @checker.convert_to_seconds('01:11:02')
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_convert_to_clocktime
|
16
|
+
assert_equal '01:11:02', @checker.convert_to_clocktime(4262)
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_convert_distance_km
|
20
|
+
assert_equal 6.21, @checker.convert_distance(10, 'km')
|
21
|
+
assert_equal 16.09, @checker.convert_distance(10, 'mi')
|
22
|
+
assert_raises(RuntimeError) { @checker.convert_distance(10, 'invalid') }
|
23
|
+
end
|
24
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: calcpace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joao Gilberto Saraiva
|
@@ -9,9 +9,94 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
date: 2024-05-25 00:00:00.000000000 Z
|
12
|
-
dependencies:
|
13
|
-
|
14
|
-
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: minitest
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '5.14'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '5.14'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '13.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '13.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake-compiler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rdoc
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '6.2'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '6.2'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rubocop
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.79'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.79'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rubocop-minitest
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.11'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0.11'
|
97
|
+
description: Calculate pace, total time, distance and easily convert distances (kilometers
|
98
|
+
and miles) for activities like running and cycling. Get readable results in HH:MM:SS
|
99
|
+
or X.X format for time and distance calculations.
|
15
100
|
email: joaogilberto@tuta.io
|
16
101
|
executables: []
|
17
102
|
extensions: []
|
@@ -21,11 +106,16 @@ files:
|
|
21
106
|
- lib/calcpace/calculator.rb
|
22
107
|
- lib/calcpace/checker.rb
|
23
108
|
- lib/calcpace/converter.rb
|
109
|
+
- test/calcpace/test_calculator.rb
|
110
|
+
- test/calcpace/test_checker.rb
|
111
|
+
- test/calcpace/test_converter.rb
|
24
112
|
homepage: https://github.com/0jonjo/calcpace
|
25
113
|
licenses:
|
26
114
|
- MIT
|
27
|
-
metadata:
|
28
|
-
|
115
|
+
metadata:
|
116
|
+
source_code_uri: https://github.com/0jonjo/calcpace
|
117
|
+
post_install_message: It's time to grab your sneakers or hop on your bike and start
|
118
|
+
exercising! Thank you for installing Calcpace!
|
29
119
|
rdoc_options: []
|
30
120
|
require_paths:
|
31
121
|
- lib
|
@@ -33,7 +123,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
33
123
|
requirements:
|
34
124
|
- - ">="
|
35
125
|
- !ruby/object:Gem::Version
|
36
|
-
version:
|
126
|
+
version: 2.7.0
|
37
127
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
38
128
|
requirements:
|
39
129
|
- - ">="
|
@@ -43,5 +133,9 @@ requirements: []
|
|
43
133
|
rubygems_version: 3.2.33
|
44
134
|
signing_key:
|
45
135
|
specification_version: 4
|
46
|
-
summary: Calcpace
|
47
|
-
|
136
|
+
summary: 'Calcpace: calculate time and distances for activities such as running and
|
137
|
+
cycling.'
|
138
|
+
test_files:
|
139
|
+
- test/calcpace/test_calculator.rb
|
140
|
+
- test/calcpace/test_checker.rb
|
141
|
+
- test/calcpace/test_converter.rb
|