trackler 2.1.0.1 → 2.1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/tracks/elixir/config.json +17 -0
- data/tracks/elixir/exercises/matrix/example.exs +63 -0
- data/tracks/elixir/exercises/matrix/matrix.exs +48 -0
- data/tracks/elixir/exercises/matrix/matrix_test.exs +58 -0
- data/tracks/elixir/exercises/twelve-days/example.exs +53 -0
- data/tracks/elixir/exercises/twelve-days/twelve_days.exs +25 -0
- data/tracks/elixir/exercises/twelve-days/twelve_days_test.exs +86 -0
- data/tracks/go/exercises/change/.meta/gen.go +1 -3
- data/tracks/go/exercises/change/cases_test.go +1 -0
- data/tracks/go/exercises/forth/example.go +1 -1
- data/tracks/go/exercises/raindrops/.meta/gen.go +1 -3
- data/tracks/go/exercises/raindrops/cases_test.go +5 -1
- data/tracks/go/exercises/raindrops/example.go +1 -1
- data/tracks/go/exercises/raindrops/raindrops.go +1 -1
- data/tracks/go/exercises/raindrops/raindrops_test.go +1 -1
- data/tracks/java/config.json +5 -5
- data/tracks/java/exercises/isogram/src/example/java/IsogramChecker.java +23 -27
- data/tracks/java/exercises/isogram/src/test/java/IsogramCheckerTest.java +77 -0
- data/tracks/javascript/config.json +9 -0
- data/tracks/javascript/exercises/proverb/example.js +36 -0
- data/tracks/javascript/exercises/proverb/proverb.spec.js +78 -0
- data/tracks/ruby/README.md +0 -33
- data/tracks/ruby/exercises/acronym/.meta/.version +1 -1
- data/tracks/ruby/exercises/acronym/acronym_test.rb +14 -9
- data/tracks/ruby/exercises/acronym/example.rb +1 -1
- data/tracks/ruby/exercises/acronym/example.tt +7 -4
- data/tracks/ruby/exercises/all-your-base/all_your_base_test.rb +1 -1
- data/tracks/ruby/exercises/all-your-base/example.tt +4 -3
- data/tracks/ruby/exercises/alphametics/alphametics_test.rb +2 -1
- data/tracks/ruby/exercises/alphametics/example.tt +2 -1
- data/tracks/ruby/exercises/anagram/anagram_test.rb +35 -20
- data/tracks/ruby/exercises/anagram/example.rb +1 -1
- data/tracks/ruby/exercises/anagram/example.tt +5 -2
- data/tracks/ruby/exercises/beer-song/beer_song_test.rb +1 -0
- data/tracks/ruby/exercises/beer-song/example.tt +6 -4
- data/tracks/ruby/exercises/binary/binary_test.rb +3 -2
- data/tracks/ruby/exercises/binary/example.tt +5 -2
- data/tracks/ruby/exercises/bowling/bowling_test.rb +39 -40
- data/tracks/ruby/exercises/bowling/example.tt +2 -2
- data/tracks/ruby/exercises/bracket-push/.meta/.version +1 -1
- data/tracks/ruby/exercises/bracket-push/bracket_push_test.rb +7 -3
- data/tracks/ruby/exercises/bracket-push/example.rb +1 -1
- data/tracks/ruby/exercises/bracket-push/example.tt +5 -2
- data/tracks/ruby/exercises/clock/clock_test.rb +40 -41
- data/tracks/ruby/exercises/clock/example.tt +5 -2
- data/tracks/ruby/exercises/connect/.meta/.version +1 -1
- data/tracks/ruby/exercises/connect/connect_test.rb +20 -3
- data/tracks/ruby/exercises/connect/example.rb +1 -1
- data/tracks/ruby/exercises/connect/example.tt +3 -1
- data/tracks/ruby/exercises/custom-set/custom_set_test.rb +1 -2
- data/tracks/ruby/exercises/custom-set/example.tt +5 -2
- data/tracks/ruby/exercises/difference-of-squares/difference_of_squares_test.rb +6 -5
- data/tracks/ruby/exercises/difference-of-squares/example.tt +8 -4
- data/tracks/ruby/exercises/dominoes/dominoes_test.rb +1 -1
- data/tracks/ruby/exercises/dominoes/example.tt +1 -1
- data/tracks/ruby/exercises/gigasecond/.meta/.version +1 -1
- data/tracks/ruby/exercises/gigasecond/example.rb +1 -1
- data/tracks/ruby/exercises/gigasecond/example.tt +7 -5
- data/tracks/ruby/exercises/gigasecond/gigasecond_test.rb +11 -16
- data/tracks/ruby/exercises/grains/example.tt +5 -3
- data/tracks/ruby/exercises/grains/grains_test.rb +2 -1
- data/tracks/ruby/exercises/hello-world/example.tt +1 -1
- data/tracks/ruby/exercises/hello-world/hello_world_test.rb +1 -1
- data/tracks/ruby/exercises/isogram/.meta/.version +1 -1
- data/tracks/ruby/exercises/isogram/example.rb +1 -1
- data/tracks/ruby/exercises/isogram/example.tt +6 -4
- data/tracks/ruby/exercises/isogram/isogram_test.rb +18 -10
- data/tracks/ruby/exercises/largest-series-product/.meta/.version +1 -1
- data/tracks/ruby/exercises/largest-series-product/example.rb +1 -1
- data/tracks/ruby/exercises/largest-series-product/example.tt +7 -5
- data/tracks/ruby/exercises/largest-series-product/largest_series_product_test.rb +11 -21
- data/tracks/ruby/exercises/leap/.meta/.version +1 -1
- data/tracks/ruby/exercises/leap/example.rb +1 -1
- data/tracks/ruby/exercises/leap/example.tt +6 -4
- data/tracks/ruby/exercises/leap/leap_test.rb +11 -25
- data/tracks/ruby/exercises/nth-prime/example.tt +7 -5
- data/tracks/ruby/exercises/nth-prime/nth_prime_test.rb +2 -3
- data/tracks/ruby/exercises/pangram/example.tt +5 -3
- data/tracks/ruby/exercises/pangram/pangram_test.rb +2 -1
- data/tracks/ruby/exercises/queen-attack/example.tt +2 -2
- data/tracks/ruby/exercises/queen-attack/queen_attack_test.rb +14 -15
- data/tracks/ruby/exercises/raindrops/example.tt +7 -4
- data/tracks/ruby/exercises/raindrops/raindrops_test.rb +38 -38
- data/tracks/ruby/exercises/rna-transcription/example.tt +6 -3
- data/tracks/ruby/exercises/rna-transcription/rna_transcription_test.rb +4 -5
- data/tracks/ruby/exercises/roman-numerals/example.tt +7 -4
- data/tracks/ruby/exercises/roman-numerals/roman_numerals_test.rb +5 -5
- data/tracks/ruby/exercises/run-length-encoding/.meta/.version +1 -1
- data/tracks/ruby/exercises/run-length-encoding/example.rb +1 -1
- data/tracks/ruby/exercises/run-length-encoding/example.tt +6 -3
- data/tracks/ruby/exercises/run-length-encoding/run_length_encoding_test.rb +70 -28
- data/tracks/ruby/exercises/say/example.tt +7 -5
- data/tracks/ruby/exercises/say/say_test.rb +3 -2
- data/tracks/ruby/exercises/sieve/example.tt +4 -1
- data/tracks/ruby/exercises/sieve/sieve_test.rb +1 -3
- data/tracks/ruby/exercises/tournament/example.tt +4 -1
- data/tracks/ruby/exercises/tournament/tournament_test.rb +1 -2
- data/tracks/ruby/exercises/transpose/example.tt +5 -2
- data/tracks/ruby/exercises/transpose/transpose_test.rb +1 -2
- data/tracks/ruby/exercises/triangle/example.tt +5 -3
- data/tracks/ruby/exercises/triangle/triangle_test.rb +1 -3
- data/tracks/ruby/exercises/two-bucket/example.tt +7 -4
- data/tracks/ruby/exercises/two-bucket/two_bucket_test.rb +9 -9
- data/tracks/ruby/exercises/word-count/example.tt +6 -4
- data/tracks/ruby/exercises/word-count/word_count_test.rb +2 -3
- data/tracks/ruby/exercises/wordy/example.tt +5 -3
- data/tracks/ruby/exercises/wordy/wordy_test.rb +2 -1
- data/tracks/ruby/lib/acronym_cases.rb +3 -15
- data/tracks/ruby/lib/all_your_base_cases.rb +22 -54
- data/tracks/ruby/lib/alphametics_cases.rb +12 -27
- data/tracks/ruby/lib/anagram_cases.rb +7 -15
- data/tracks/ruby/lib/beer_song_cases.rb +7 -24
- data/tracks/ruby/lib/binary_cases.rb +5 -18
- data/tracks/ruby/lib/bowling_cases.rb +24 -24
- data/tracks/ruby/lib/bracket_push_cases.rb +6 -21
- data/tracks/ruby/lib/clock_cases.rb +6 -25
- data/tracks/ruby/lib/connect_cases.rb +2 -20
- data/tracks/ruby/lib/custom_set_cases.rb +14 -35
- data/tracks/ruby/lib/difference_of_squares_cases.rb +5 -26
- data/tracks/ruby/lib/dominoes_cases.rb +2 -11
- data/tracks/ruby/lib/generator/case_values.rb +25 -0
- data/tracks/ruby/lib/generator/exercise_cases.rb +11 -0
- data/tracks/ruby/lib/generator/files/track_files.rb +7 -2
- data/tracks/ruby/lib/generator/template_values.rb +12 -7
- data/tracks/ruby/lib/gigasecond_cases.rb +4 -18
- data/tracks/ruby/lib/grains_cases.rb +11 -38
- data/tracks/ruby/lib/hamming_cases.rb +0 -6
- data/tracks/ruby/lib/hello_world_cases.rb +2 -14
- data/tracks/ruby/lib/isogram_cases.rb +8 -16
- data/tracks/ruby/lib/largest_series_product_cases.rb +10 -16
- data/tracks/ruby/lib/leap_cases.rb +3 -16
- data/tracks/ruby/lib/luhn_cases.rb +0 -6
- data/tracks/ruby/lib/nth_prime_cases.rb +11 -13
- data/tracks/ruby/lib/ocr_numbers_cases.rb +0 -5
- data/tracks/ruby/lib/pangram_cases.rb +2 -19
- data/tracks/ruby/lib/pig_latin_cases.rb +0 -5
- data/tracks/ruby/lib/queen_attack_cases.rb +14 -37
- data/tracks/ruby/lib/raindrops_cases.rb +3 -15
- data/tracks/ruby/lib/rna_transcription_cases.rb +2 -14
- data/tracks/ruby/lib/roman_numerals_cases.rb +7 -10
- data/tracks/ruby/lib/run_length_encoding_cases.rb +4 -25
- data/tracks/ruby/lib/say_cases.rb +3 -14
- data/tracks/ruby/lib/sieve_cases.rb +1 -15
- data/tracks/ruby/lib/tournament_cases.rb +1 -14
- data/tracks/ruby/lib/transpose_cases.rb +1 -14
- data/tracks/ruby/lib/triangle_cases.rb +8 -27
- data/tracks/ruby/lib/two_bucket_cases.rb +7 -17
- data/tracks/ruby/lib/word_count_cases.rb +1 -13
- data/tracks/ruby/lib/wordy_cases.rb +4 -27
- data/tracks/ruby/test/fixtures/metadata/exercises/complex/canonical-data.json +45 -0
- data/tracks/ruby/test/fixtures/xruby/lib/beta_cases.rb +7 -0
- data/tracks/ruby/test/generator/case_values_test.rb +30 -0
- data/tracks/ruby/test/generator/files/track_files_test.rb +2 -3
- data/tracks/ruby/test/generator/template_values_test.rb +44 -3
- data/tracks/ruby/test/wordy_cases_test.rb +4 -65
- metadata +14 -4
- data/tracks/java/exercises/isogram/src/test/java/IsogramTest.java +0 -80
- data/tracks/ruby/test/grains_cases_test.rb +0 -103
@@ -9,12 +9,12 @@ class BowlingTest < Minitest::Test
|
|
9
9
|
@game = Game.new
|
10
10
|
end
|
11
11
|
|
12
|
-
def
|
12
|
+
def record(rolls)
|
13
13
|
rolls.each { |pins| @game.roll(pins) }
|
14
14
|
end
|
15
15
|
|
16
16
|
<% test_cases.each do |test_case| %>
|
17
|
-
def <%= test_case.
|
17
|
+
def <%= test_case.name %>
|
18
18
|
<%= test_case.skipped %>
|
19
19
|
<%= test_case.workload %>
|
20
20
|
end
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
4
|
@@ -3,8 +3,7 @@ gem 'minitest', '>= 5.0.0'
|
|
3
3
|
require 'minitest/autorun'
|
4
4
|
require_relative 'bracket_push'
|
5
5
|
|
6
|
-
#
|
7
|
-
# 306975e
|
6
|
+
# Common test data version: 855c591
|
8
7
|
class BracketsTest < Minitest::Test
|
9
8
|
def test_paired_square_brackets
|
10
9
|
# skip
|
@@ -26,6 +25,11 @@ class BracketsTest < Minitest::Test
|
|
26
25
|
refute Brackets.paired?('}{')
|
27
26
|
end
|
28
27
|
|
28
|
+
def test_wrong_closing_bracket
|
29
|
+
skip
|
30
|
+
refute Brackets.paired?('{]')
|
31
|
+
end
|
32
|
+
|
29
33
|
def test_paired_with_whitespace
|
30
34
|
skip
|
31
35
|
assert Brackets.paired?('{ }')
|
@@ -92,6 +96,6 @@ class BracketsTest < Minitest::Test
|
|
92
96
|
|
93
97
|
def test_bookkeeping
|
94
98
|
skip
|
95
|
-
assert_equal
|
99
|
+
assert_equal 4, BookKeeping::VERSION
|
96
100
|
end
|
97
101
|
end
|
@@ -4,13 +4,16 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'bracket_push'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class BracketsTest < Minitest::Test
|
7
|
+
class BracketsTest < Minitest::Test
|
8
|
+
<% test_cases.each do |test_case| %>
|
8
9
|
def <%= test_case.name %>
|
9
10
|
<%= test_case.skipped %>
|
10
|
-
<%= test_case.
|
11
|
+
<%= test_case.workload %>
|
11
12
|
end
|
13
|
+
|
12
14
|
<% end %>
|
13
15
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
16
|
+
|
14
17
|
def test_bookkeeping
|
15
18
|
skip
|
16
19
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -3,183 +3,181 @@ gem 'minitest', '>= 5.0.0'
|
|
3
3
|
require 'minitest/autorun'
|
4
4
|
require_relative 'clock'
|
5
5
|
|
6
|
-
#
|
7
|
-
# deb225e Implement canonical dataset for scrabble-score problem (#255)
|
8
|
-
|
6
|
+
# Common test data version: 8c7fc0c
|
9
7
|
class ClockTest < Minitest::Test
|
10
8
|
def test_on_the_hour
|
11
9
|
# skip
|
12
|
-
assert_equal
|
10
|
+
assert_equal "08:00", Clock.at(8, 0).to_s
|
13
11
|
end
|
14
12
|
|
15
13
|
def test_past_the_hour
|
16
14
|
skip
|
17
|
-
assert_equal
|
15
|
+
assert_equal "11:09", Clock.at(11, 9).to_s
|
18
16
|
end
|
19
17
|
|
20
18
|
def test_midnight_is_zero_hours
|
21
19
|
skip
|
22
|
-
assert_equal
|
20
|
+
assert_equal "00:00", Clock.at(24, 0).to_s
|
23
21
|
end
|
24
22
|
|
25
23
|
def test_hour_rolls_over
|
26
24
|
skip
|
27
|
-
assert_equal
|
25
|
+
assert_equal "01:00", Clock.at(25, 0).to_s
|
28
26
|
end
|
29
27
|
|
30
28
|
def test_hour_rolls_over_continuously
|
31
29
|
skip
|
32
|
-
assert_equal
|
30
|
+
assert_equal "04:00", Clock.at(100, 0).to_s
|
33
31
|
end
|
34
32
|
|
35
33
|
def test_sixty_minutes_is_next_hour
|
36
34
|
skip
|
37
|
-
assert_equal
|
35
|
+
assert_equal "02:00", Clock.at(1, 60).to_s
|
38
36
|
end
|
39
37
|
|
40
38
|
def test_minutes_roll_over
|
41
39
|
skip
|
42
|
-
assert_equal
|
40
|
+
assert_equal "02:40", Clock.at(0, 160).to_s
|
43
41
|
end
|
44
42
|
|
45
43
|
def test_minutes_roll_over_continuously
|
46
44
|
skip
|
47
|
-
assert_equal
|
45
|
+
assert_equal "04:43", Clock.at(0, 1723).to_s
|
48
46
|
end
|
49
47
|
|
50
48
|
def test_hour_and_minutes_roll_over
|
51
49
|
skip
|
52
|
-
assert_equal
|
50
|
+
assert_equal "03:40", Clock.at(25, 160).to_s
|
53
51
|
end
|
54
52
|
|
55
53
|
def test_hour_and_minutes_roll_over_continuously
|
56
54
|
skip
|
57
|
-
assert_equal
|
55
|
+
assert_equal "11:01", Clock.at(201, 3001).to_s
|
58
56
|
end
|
59
57
|
|
60
58
|
def test_hour_and_minutes_roll_over_to_exactly_midnight
|
61
59
|
skip
|
62
|
-
assert_equal
|
60
|
+
assert_equal "00:00", Clock.at(72, 8640).to_s
|
63
61
|
end
|
64
62
|
|
65
63
|
def test_negative_hour
|
66
64
|
skip
|
67
|
-
assert_equal
|
65
|
+
assert_equal "23:15", Clock.at(-1, 15).to_s
|
68
66
|
end
|
69
67
|
|
70
68
|
def test_negative_hour_rolls_over
|
71
69
|
skip
|
72
|
-
assert_equal
|
70
|
+
assert_equal "23:00", Clock.at(-25, 0).to_s
|
73
71
|
end
|
74
72
|
|
75
73
|
def test_negative_hour_rolls_over_continuously
|
76
74
|
skip
|
77
|
-
assert_equal
|
75
|
+
assert_equal "05:00", Clock.at(-91, 0).to_s
|
78
76
|
end
|
79
77
|
|
80
78
|
def test_negative_minutes
|
81
79
|
skip
|
82
|
-
assert_equal
|
80
|
+
assert_equal "00:20", Clock.at(1, -40).to_s
|
83
81
|
end
|
84
82
|
|
85
83
|
def test_negative_minutes_roll_over
|
86
84
|
skip
|
87
|
-
assert_equal
|
85
|
+
assert_equal "22:20", Clock.at(1, -160).to_s
|
88
86
|
end
|
89
87
|
|
90
88
|
def test_negative_minutes_roll_over_continuously
|
91
89
|
skip
|
92
|
-
assert_equal
|
90
|
+
assert_equal "16:40", Clock.at(1, -4820).to_s
|
93
91
|
end
|
94
92
|
|
95
93
|
def test_negative_hour_and_minutes_both_roll_over
|
96
94
|
skip
|
97
|
-
assert_equal
|
95
|
+
assert_equal "20:20", Clock.at(-25, -160).to_s
|
98
96
|
end
|
99
97
|
|
100
98
|
def test_negative_hour_and_minutes_both_roll_over_continuously
|
101
99
|
skip
|
102
|
-
assert_equal
|
100
|
+
assert_equal "22:10", Clock.at(-121, -5810).to_s
|
103
101
|
end
|
104
102
|
|
105
103
|
def test_add_minutes
|
106
104
|
skip
|
107
|
-
assert_equal
|
105
|
+
assert_equal "10:03", (Clock.at(10, 0) + 3).to_s
|
108
106
|
end
|
109
107
|
|
110
108
|
def test_add_no_minutes
|
111
109
|
skip
|
112
|
-
assert_equal
|
110
|
+
assert_equal "06:41", (Clock.at(6, 41) + 0).to_s
|
113
111
|
end
|
114
112
|
|
115
113
|
def test_add_to_next_hour
|
116
114
|
skip
|
117
|
-
assert_equal
|
115
|
+
assert_equal "01:25", (Clock.at(0, 45) + 40).to_s
|
118
116
|
end
|
119
117
|
|
120
118
|
def test_add_more_than_one_hour
|
121
119
|
skip
|
122
|
-
assert_equal
|
120
|
+
assert_equal "11:01", (Clock.at(10, 0) + 61).to_s
|
123
121
|
end
|
124
122
|
|
125
123
|
def test_add_more_than_two_hours_with_carry
|
126
124
|
skip
|
127
|
-
assert_equal
|
125
|
+
assert_equal "03:25", (Clock.at(0, 45) + 160).to_s
|
128
126
|
end
|
129
127
|
|
130
128
|
def test_add_across_midnight
|
131
129
|
skip
|
132
|
-
assert_equal
|
130
|
+
assert_equal "00:01", (Clock.at(23, 59) + 2).to_s
|
133
131
|
end
|
134
132
|
|
135
133
|
def test_add_more_than_one_day__1500_min_is_equal_to_25_hrs
|
136
134
|
skip
|
137
|
-
assert_equal
|
135
|
+
assert_equal "06:32", (Clock.at(5, 32) + 1500).to_s
|
138
136
|
end
|
139
137
|
|
140
138
|
def test_add_more_than_two_days
|
141
139
|
skip
|
142
|
-
assert_equal
|
140
|
+
assert_equal "11:21", (Clock.at(1, 1) + 3500).to_s
|
143
141
|
end
|
144
142
|
|
145
143
|
def test_subtract_minutes
|
146
144
|
skip
|
147
|
-
assert_equal
|
145
|
+
assert_equal "10:00", (Clock.at(10, 3) + -3).to_s
|
148
146
|
end
|
149
147
|
|
150
148
|
def test_subtract_to_previous_hour
|
151
149
|
skip
|
152
|
-
assert_equal
|
150
|
+
assert_equal "09:33", (Clock.at(10, 3) + -30).to_s
|
153
151
|
end
|
154
152
|
|
155
153
|
def test_subtract_more_than_an_hour
|
156
154
|
skip
|
157
|
-
assert_equal
|
155
|
+
assert_equal "08:53", (Clock.at(10, 3) + -70).to_s
|
158
156
|
end
|
159
157
|
|
160
158
|
def test_subtract_across_midnight
|
161
159
|
skip
|
162
|
-
assert_equal
|
160
|
+
assert_equal "23:59", (Clock.at(0, 3) + -4).to_s
|
163
161
|
end
|
164
162
|
|
165
163
|
def test_subtract_more_than_two_hours
|
166
164
|
skip
|
167
|
-
assert_equal
|
165
|
+
assert_equal "21:20", (Clock.at(0, 0) + -160).to_s
|
168
166
|
end
|
169
167
|
|
170
168
|
def test_subtract_more_than_two_hours_with_borrow
|
171
169
|
skip
|
172
|
-
assert_equal
|
170
|
+
assert_equal "03:35", (Clock.at(6, 15) + -160).to_s
|
173
171
|
end
|
174
172
|
|
175
173
|
def test_subtract_more_than_one_day__1500_min_is_equal_to_25_hrs
|
176
174
|
skip
|
177
|
-
assert_equal
|
175
|
+
assert_equal "04:32", (Clock.at(5, 32) + -1500).to_s
|
178
176
|
end
|
179
177
|
|
180
178
|
def test_subtract_more_than_two_days
|
181
179
|
skip
|
182
|
-
assert_equal
|
180
|
+
assert_equal "00:20", (Clock.at(2, 20) + -3000).to_s
|
183
181
|
end
|
184
182
|
|
185
183
|
def test_clocks_with_same_time
|
@@ -283,7 +281,7 @@ class ClockTest < Minitest::Test
|
|
283
281
|
def test_clocks_with_negative_hours_and_minutes_that_wrap
|
284
282
|
skip
|
285
283
|
clock1 = Clock.at(18, 7)
|
286
|
-
clock2 = Clock.at(-54, -
|
284
|
+
clock2 = Clock.at(-54, -11513)
|
287
285
|
assert clock1 == clock2
|
288
286
|
end
|
289
287
|
|
@@ -293,8 +291,9 @@ class ClockTest < Minitest::Test
|
|
293
291
|
# not your solution.
|
294
292
|
#
|
295
293
|
# Define a constant named VERSION inside of the top level BookKeeping
|
296
|
-
# module.
|
297
|
-
#
|
294
|
+
# module, which may be placed near the end of your file.
|
295
|
+
#
|
296
|
+
# In your file, it will look like this:
|
298
297
|
#
|
299
298
|
# module BookKeeping
|
300
299
|
# VERSION = 1 # Where the version number matches the one in the test.
|
@@ -4,13 +4,16 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'clock'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class ClockTest < Minitest::Test
|
7
|
+
class ClockTest < Minitest::Test
|
8
|
+
<% test_cases.each do |test_case| %>
|
8
9
|
def <%= test_case.name %>
|
9
10
|
<%= test_case.skipped %>
|
10
|
-
<%= test_case.
|
11
|
+
<%= test_case.workload %>
|
11
12
|
end
|
13
|
+
|
12
14
|
<% end %>
|
13
15
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
16
|
+
|
14
17
|
def test_bookkeeping
|
15
18
|
skip
|
16
19
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
2
|
@@ -3,7 +3,7 @@ gem 'minitest', '>= 5.0.0'
|
|
3
3
|
require 'minitest/autorun'
|
4
4
|
require_relative 'connect'
|
5
5
|
|
6
|
-
#
|
6
|
+
# Common test data version: 327db7f
|
7
7
|
class ConnectTest < Minitest::Test
|
8
8
|
def test_an_empty_board_has_no_winner
|
9
9
|
# skip
|
@@ -18,6 +18,24 @@ class ConnectTest < Minitest::Test
|
|
18
18
|
assert_equal '', game.winner, 'an empty board has no winner'
|
19
19
|
end
|
20
20
|
|
21
|
+
def test_x_can_win_on_a_1x1_board
|
22
|
+
skip
|
23
|
+
board = [
|
24
|
+
'X'
|
25
|
+
]
|
26
|
+
game = Board.new(board)
|
27
|
+
assert_equal 'X', game.winner, 'X can win on a 1x1 board'
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_o_can_win_on_a_1x1_board
|
31
|
+
skip
|
32
|
+
board = [
|
33
|
+
'O'
|
34
|
+
]
|
35
|
+
game = Board.new(board)
|
36
|
+
assert_equal 'O', game.winner, 'O can win on a 1x1 board'
|
37
|
+
end
|
38
|
+
|
21
39
|
def test_only_edges_does_not_make_a_winner
|
22
40
|
skip
|
23
41
|
board = [
|
@@ -128,9 +146,8 @@ class ConnectTest < Minitest::Test
|
|
128
146
|
#
|
129
147
|
# If you are curious, read more about constants on RubyDoc:
|
130
148
|
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
131
|
-
|
132
149
|
def test_bookkeeping
|
133
150
|
skip
|
134
|
-
assert_equal
|
151
|
+
assert_equal 2, BookKeeping::VERSION
|
135
152
|
end
|
136
153
|
end
|
@@ -4,11 +4,13 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'connect'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class ConnectTest < Minitest::Test
|
7
|
+
class ConnectTest < Minitest::Test
|
8
|
+
<% test_cases.each do |test_case| %>
|
8
9
|
<%= test_case.ignore_method_length%>def <%= test_case.name %>
|
9
10
|
<%= test_case.skipped %><% test_case.test_body.each do |line| %>
|
10
11
|
<%= line %><% end %>
|
11
12
|
end
|
13
|
+
|
12
14
|
<% end %>
|
13
15
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
14
16
|
def test_bookkeeping
|
@@ -4,13 +4,16 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'custom_set'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class CustomSetTest < Minitest::Test
|
7
|
+
class CustomSetTest < Minitest::Test
|
8
|
+
<% test_cases.each do |test_case| %>
|
8
9
|
def <%= test_case.name %>
|
9
10
|
<%= test_case.skipped %>
|
10
|
-
<%= test_case.
|
11
|
+
<%= test_case.workload %>
|
11
12
|
end
|
13
|
+
|
12
14
|
<% end %>
|
13
15
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
16
|
+
|
14
17
|
def test_bookkeeping
|
15
18
|
skip
|
16
19
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -3,11 +3,10 @@ gem 'minitest', '>= 5.0.0'
|
|
3
3
|
require 'minitest/autorun'
|
4
4
|
require_relative 'difference_of_squares'
|
5
5
|
|
6
|
-
#
|
7
|
-
# deb225e Implement canonical dataset for scrabble-score problem (#255)
|
8
|
-
|
6
|
+
# Common test data version: 1eb9535
|
9
7
|
class DifferenceOfSquaresTest < Minitest::Test
|
10
8
|
def test_square_of_sum_5
|
9
|
+
# skip
|
11
10
|
assert_equal 225, Squares.new(5).square_of_sum
|
12
11
|
end
|
13
12
|
|
@@ -61,14 +60,16 @@ class DifferenceOfSquaresTest < Minitest::Test
|
|
61
60
|
squares = Squares.new(10)
|
62
61
|
assert_equal squares.difference, squares.difference
|
63
62
|
end
|
63
|
+
|
64
64
|
# Problems in exercism evolve over time, as we find better ways to ask
|
65
65
|
# questions.
|
66
66
|
# The version number refers to the version of the problem you solved,
|
67
67
|
# not your solution.
|
68
68
|
#
|
69
69
|
# Define a constant named VERSION inside of the top level BookKeeping
|
70
|
-
# module.
|
71
|
-
#
|
70
|
+
# module, which may be placed near the end of your file.
|
71
|
+
#
|
72
|
+
# In your file, it will look like this:
|
72
73
|
#
|
73
74
|
# module BookKeeping
|
74
75
|
# VERSION = 1 # Where the version number matches the one in the test.
|