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.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/elixir/config.json +17 -0
  4. data/tracks/elixir/exercises/matrix/example.exs +63 -0
  5. data/tracks/elixir/exercises/matrix/matrix.exs +48 -0
  6. data/tracks/elixir/exercises/matrix/matrix_test.exs +58 -0
  7. data/tracks/elixir/exercises/twelve-days/example.exs +53 -0
  8. data/tracks/elixir/exercises/twelve-days/twelve_days.exs +25 -0
  9. data/tracks/elixir/exercises/twelve-days/twelve_days_test.exs +86 -0
  10. data/tracks/go/exercises/change/.meta/gen.go +1 -3
  11. data/tracks/go/exercises/change/cases_test.go +1 -0
  12. data/tracks/go/exercises/forth/example.go +1 -1
  13. data/tracks/go/exercises/raindrops/.meta/gen.go +1 -3
  14. data/tracks/go/exercises/raindrops/cases_test.go +5 -1
  15. data/tracks/go/exercises/raindrops/example.go +1 -1
  16. data/tracks/go/exercises/raindrops/raindrops.go +1 -1
  17. data/tracks/go/exercises/raindrops/raindrops_test.go +1 -1
  18. data/tracks/java/config.json +5 -5
  19. data/tracks/java/exercises/isogram/src/example/java/IsogramChecker.java +23 -27
  20. data/tracks/java/exercises/isogram/src/test/java/IsogramCheckerTest.java +77 -0
  21. data/tracks/javascript/config.json +9 -0
  22. data/tracks/javascript/exercises/proverb/example.js +36 -0
  23. data/tracks/javascript/exercises/proverb/proverb.spec.js +78 -0
  24. data/tracks/ruby/README.md +0 -33
  25. data/tracks/ruby/exercises/acronym/.meta/.version +1 -1
  26. data/tracks/ruby/exercises/acronym/acronym_test.rb +14 -9
  27. data/tracks/ruby/exercises/acronym/example.rb +1 -1
  28. data/tracks/ruby/exercises/acronym/example.tt +7 -4
  29. data/tracks/ruby/exercises/all-your-base/all_your_base_test.rb +1 -1
  30. data/tracks/ruby/exercises/all-your-base/example.tt +4 -3
  31. data/tracks/ruby/exercises/alphametics/alphametics_test.rb +2 -1
  32. data/tracks/ruby/exercises/alphametics/example.tt +2 -1
  33. data/tracks/ruby/exercises/anagram/anagram_test.rb +35 -20
  34. data/tracks/ruby/exercises/anagram/example.rb +1 -1
  35. data/tracks/ruby/exercises/anagram/example.tt +5 -2
  36. data/tracks/ruby/exercises/beer-song/beer_song_test.rb +1 -0
  37. data/tracks/ruby/exercises/beer-song/example.tt +6 -4
  38. data/tracks/ruby/exercises/binary/binary_test.rb +3 -2
  39. data/tracks/ruby/exercises/binary/example.tt +5 -2
  40. data/tracks/ruby/exercises/bowling/bowling_test.rb +39 -40
  41. data/tracks/ruby/exercises/bowling/example.tt +2 -2
  42. data/tracks/ruby/exercises/bracket-push/.meta/.version +1 -1
  43. data/tracks/ruby/exercises/bracket-push/bracket_push_test.rb +7 -3
  44. data/tracks/ruby/exercises/bracket-push/example.rb +1 -1
  45. data/tracks/ruby/exercises/bracket-push/example.tt +5 -2
  46. data/tracks/ruby/exercises/clock/clock_test.rb +40 -41
  47. data/tracks/ruby/exercises/clock/example.tt +5 -2
  48. data/tracks/ruby/exercises/connect/.meta/.version +1 -1
  49. data/tracks/ruby/exercises/connect/connect_test.rb +20 -3
  50. data/tracks/ruby/exercises/connect/example.rb +1 -1
  51. data/tracks/ruby/exercises/connect/example.tt +3 -1
  52. data/tracks/ruby/exercises/custom-set/custom_set_test.rb +1 -2
  53. data/tracks/ruby/exercises/custom-set/example.tt +5 -2
  54. data/tracks/ruby/exercises/difference-of-squares/difference_of_squares_test.rb +6 -5
  55. data/tracks/ruby/exercises/difference-of-squares/example.tt +8 -4
  56. data/tracks/ruby/exercises/dominoes/dominoes_test.rb +1 -1
  57. data/tracks/ruby/exercises/dominoes/example.tt +1 -1
  58. data/tracks/ruby/exercises/gigasecond/.meta/.version +1 -1
  59. data/tracks/ruby/exercises/gigasecond/example.rb +1 -1
  60. data/tracks/ruby/exercises/gigasecond/example.tt +7 -5
  61. data/tracks/ruby/exercises/gigasecond/gigasecond_test.rb +11 -16
  62. data/tracks/ruby/exercises/grains/example.tt +5 -3
  63. data/tracks/ruby/exercises/grains/grains_test.rb +2 -1
  64. data/tracks/ruby/exercises/hello-world/example.tt +1 -1
  65. data/tracks/ruby/exercises/hello-world/hello_world_test.rb +1 -1
  66. data/tracks/ruby/exercises/isogram/.meta/.version +1 -1
  67. data/tracks/ruby/exercises/isogram/example.rb +1 -1
  68. data/tracks/ruby/exercises/isogram/example.tt +6 -4
  69. data/tracks/ruby/exercises/isogram/isogram_test.rb +18 -10
  70. data/tracks/ruby/exercises/largest-series-product/.meta/.version +1 -1
  71. data/tracks/ruby/exercises/largest-series-product/example.rb +1 -1
  72. data/tracks/ruby/exercises/largest-series-product/example.tt +7 -5
  73. data/tracks/ruby/exercises/largest-series-product/largest_series_product_test.rb +11 -21
  74. data/tracks/ruby/exercises/leap/.meta/.version +1 -1
  75. data/tracks/ruby/exercises/leap/example.rb +1 -1
  76. data/tracks/ruby/exercises/leap/example.tt +6 -4
  77. data/tracks/ruby/exercises/leap/leap_test.rb +11 -25
  78. data/tracks/ruby/exercises/nth-prime/example.tt +7 -5
  79. data/tracks/ruby/exercises/nth-prime/nth_prime_test.rb +2 -3
  80. data/tracks/ruby/exercises/pangram/example.tt +5 -3
  81. data/tracks/ruby/exercises/pangram/pangram_test.rb +2 -1
  82. data/tracks/ruby/exercises/queen-attack/example.tt +2 -2
  83. data/tracks/ruby/exercises/queen-attack/queen_attack_test.rb +14 -15
  84. data/tracks/ruby/exercises/raindrops/example.tt +7 -4
  85. data/tracks/ruby/exercises/raindrops/raindrops_test.rb +38 -38
  86. data/tracks/ruby/exercises/rna-transcription/example.tt +6 -3
  87. data/tracks/ruby/exercises/rna-transcription/rna_transcription_test.rb +4 -5
  88. data/tracks/ruby/exercises/roman-numerals/example.tt +7 -4
  89. data/tracks/ruby/exercises/roman-numerals/roman_numerals_test.rb +5 -5
  90. data/tracks/ruby/exercises/run-length-encoding/.meta/.version +1 -1
  91. data/tracks/ruby/exercises/run-length-encoding/example.rb +1 -1
  92. data/tracks/ruby/exercises/run-length-encoding/example.tt +6 -3
  93. data/tracks/ruby/exercises/run-length-encoding/run_length_encoding_test.rb +70 -28
  94. data/tracks/ruby/exercises/say/example.tt +7 -5
  95. data/tracks/ruby/exercises/say/say_test.rb +3 -2
  96. data/tracks/ruby/exercises/sieve/example.tt +4 -1
  97. data/tracks/ruby/exercises/sieve/sieve_test.rb +1 -3
  98. data/tracks/ruby/exercises/tournament/example.tt +4 -1
  99. data/tracks/ruby/exercises/tournament/tournament_test.rb +1 -2
  100. data/tracks/ruby/exercises/transpose/example.tt +5 -2
  101. data/tracks/ruby/exercises/transpose/transpose_test.rb +1 -2
  102. data/tracks/ruby/exercises/triangle/example.tt +5 -3
  103. data/tracks/ruby/exercises/triangle/triangle_test.rb +1 -3
  104. data/tracks/ruby/exercises/two-bucket/example.tt +7 -4
  105. data/tracks/ruby/exercises/two-bucket/two_bucket_test.rb +9 -9
  106. data/tracks/ruby/exercises/word-count/example.tt +6 -4
  107. data/tracks/ruby/exercises/word-count/word_count_test.rb +2 -3
  108. data/tracks/ruby/exercises/wordy/example.tt +5 -3
  109. data/tracks/ruby/exercises/wordy/wordy_test.rb +2 -1
  110. data/tracks/ruby/lib/acronym_cases.rb +3 -15
  111. data/tracks/ruby/lib/all_your_base_cases.rb +22 -54
  112. data/tracks/ruby/lib/alphametics_cases.rb +12 -27
  113. data/tracks/ruby/lib/anagram_cases.rb +7 -15
  114. data/tracks/ruby/lib/beer_song_cases.rb +7 -24
  115. data/tracks/ruby/lib/binary_cases.rb +5 -18
  116. data/tracks/ruby/lib/bowling_cases.rb +24 -24
  117. data/tracks/ruby/lib/bracket_push_cases.rb +6 -21
  118. data/tracks/ruby/lib/clock_cases.rb +6 -25
  119. data/tracks/ruby/lib/connect_cases.rb +2 -20
  120. data/tracks/ruby/lib/custom_set_cases.rb +14 -35
  121. data/tracks/ruby/lib/difference_of_squares_cases.rb +5 -26
  122. data/tracks/ruby/lib/dominoes_cases.rb +2 -11
  123. data/tracks/ruby/lib/generator/case_values.rb +25 -0
  124. data/tracks/ruby/lib/generator/exercise_cases.rb +11 -0
  125. data/tracks/ruby/lib/generator/files/track_files.rb +7 -2
  126. data/tracks/ruby/lib/generator/template_values.rb +12 -7
  127. data/tracks/ruby/lib/gigasecond_cases.rb +4 -18
  128. data/tracks/ruby/lib/grains_cases.rb +11 -38
  129. data/tracks/ruby/lib/hamming_cases.rb +0 -6
  130. data/tracks/ruby/lib/hello_world_cases.rb +2 -14
  131. data/tracks/ruby/lib/isogram_cases.rb +8 -16
  132. data/tracks/ruby/lib/largest_series_product_cases.rb +10 -16
  133. data/tracks/ruby/lib/leap_cases.rb +3 -16
  134. data/tracks/ruby/lib/luhn_cases.rb +0 -6
  135. data/tracks/ruby/lib/nth_prime_cases.rb +11 -13
  136. data/tracks/ruby/lib/ocr_numbers_cases.rb +0 -5
  137. data/tracks/ruby/lib/pangram_cases.rb +2 -19
  138. data/tracks/ruby/lib/pig_latin_cases.rb +0 -5
  139. data/tracks/ruby/lib/queen_attack_cases.rb +14 -37
  140. data/tracks/ruby/lib/raindrops_cases.rb +3 -15
  141. data/tracks/ruby/lib/rna_transcription_cases.rb +2 -14
  142. data/tracks/ruby/lib/roman_numerals_cases.rb +7 -10
  143. data/tracks/ruby/lib/run_length_encoding_cases.rb +4 -25
  144. data/tracks/ruby/lib/say_cases.rb +3 -14
  145. data/tracks/ruby/lib/sieve_cases.rb +1 -15
  146. data/tracks/ruby/lib/tournament_cases.rb +1 -14
  147. data/tracks/ruby/lib/transpose_cases.rb +1 -14
  148. data/tracks/ruby/lib/triangle_cases.rb +8 -27
  149. data/tracks/ruby/lib/two_bucket_cases.rb +7 -17
  150. data/tracks/ruby/lib/word_count_cases.rb +1 -13
  151. data/tracks/ruby/lib/wordy_cases.rb +4 -27
  152. data/tracks/ruby/test/fixtures/metadata/exercises/complex/canonical-data.json +45 -0
  153. data/tracks/ruby/test/fixtures/xruby/lib/beta_cases.rb +7 -0
  154. data/tracks/ruby/test/generator/case_values_test.rb +30 -0
  155. data/tracks/ruby/test/generator/files/track_files_test.rb +2 -3
  156. data/tracks/ruby/test/generator/template_values_test.rb +44 -3
  157. data/tracks/ruby/test/wordy_cases_test.rb +4 -65
  158. metadata +14 -4
  159. data/tracks/java/exercises/isogram/src/test/java/IsogramTest.java +0 -80
  160. data/tracks/ruby/test/grains_cases_test.rb +0 -103
@@ -4,13 +4,16 @@ require 'minitest/autorun'
4
4
  require_relative 'roman_numerals'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
- class RomanNumeralsTest < Minitest::Test<% test_cases.each do |test_case| %>
8
- def <%= test_case.name %><% if test_case.skipped? %>
9
- skip<% end %>
10
- assert_equal '<%= test_case.expected %>', <%= test_case.do %>
7
+ class RomanNumeralsTest < Minitest::Test
8
+ <% test_cases.each do |test_case| %>
9
+ def <%= test_case.name %>
10
+ <%= test_case.skipped %>
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 'roman_numerals'
5
5
 
6
- # Test data version:
7
- # deb225e Implement canonical dataset for scrabble-score problem (#255)
8
-
6
+ # Common test data version: 070e8d5
9
7
  class RomanNumeralsTest < Minitest::Test
10
8
  def test_1
9
+ # skip
11
10
  assert_equal 'I', 1.to_roman
12
11
  end
13
12
 
@@ -102,8 +101,9 @@ class RomanNumeralsTest < Minitest::Test
102
101
  # not your solution.
103
102
  #
104
103
  # Define a constant named VERSION inside of the top level BookKeeping
105
- # module.
106
- # In your file, it will look like this:
104
+ # module, which may be placed near the end of your file.
105
+ #
106
+ # In your file, it will look like this:
107
107
  #
108
108
  # module BookKeeping
109
109
  # VERSION = 1 # Where the version number matches the one in the test.
@@ -1 +1 @@
1
- 2
1
+ 3
@@ -1,5 +1,5 @@
1
1
  module BookKeeping
2
- VERSION = 2
2
+ VERSION = 3
3
3
  end
4
4
 
5
5
  class RunLengthEncoding
@@ -5,15 +5,18 @@ require 'minitest/autorun'
5
5
  require_relative 'run_length_encoding'
6
6
 
7
7
  # Common test data version: <%= abbreviated_commit_hash %>
8
- class RunLengthEncodingTest < Minitest::Test<% test_cases.each do |test_case| %>
9
- def <%= test_case.name %><% if test_case.skipped? %>
10
- skip<% end %>
8
+ class RunLengthEncodingTest < Minitest::Test
9
+ <% test_cases.each do |test_case| %>
10
+ def <%= test_case.name %>
11
+ <%= test_case.skipped %>
11
12
  <%= test_case.assign_input %>
12
13
  <%= test_case.assign_output %>
13
14
  <%= test_case.assertion %>
14
15
  end
16
+
15
17
  <% end %>
16
18
  <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
19
+
17
20
  def test_bookkeeping
18
21
  skip
19
22
  assert_equal <%= version %>, BookKeeping::VERSION
@@ -4,57 +4,98 @@ gem 'minitest', '>= 5.0.0'
4
4
  require 'minitest/autorun'
5
5
  require_relative 'run_length_encoding'
6
6
 
7
- # Test data version:
8
- # deb225e Implement canonical dataset for scrabble-score problem (#255)
9
-
7
+ # Common test data version: 503a57a
10
8
  class RunLengthEncodingTest < Minitest::Test
11
- def test_encode_simple
12
- input = 'AABBBCCCC'
13
- output = '2A3B4C'
9
+ def test_empty_string
10
+ # skip
11
+ input = ''
12
+ output = ''
14
13
  assert_equal output, RunLengthEncoding.encode(input)
15
14
  end
16
15
 
17
- def test_decode_simple
16
+ def test_single_characters_only_are_encoded_without_count
18
17
  skip
19
- input = '2A3B4C'
20
- output = 'AABBBCCCC'
21
- assert_equal output, RunLengthEncoding.decode(input)
18
+ input = 'XYZ'
19
+ output = 'XYZ'
20
+ assert_equal output, RunLengthEncoding.encode(input)
21
+ end
22
+
23
+ def test_string_with_no_single_characters
24
+ skip
25
+ input = 'AABBBCCCC'
26
+ output = '2A3B4C'
27
+ assert_equal output, RunLengthEncoding.encode(input)
22
28
  end
23
29
 
24
- def test_encode_with_single_values
30
+ def test_single_characters_mixed_with_repeated_characters
25
31
  skip
26
32
  input = 'WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB'
27
33
  output = '12WB12W3B24WB'
28
34
  assert_equal output, RunLengthEncoding.encode(input)
29
35
  end
30
36
 
31
- def test_decode_with_single_values
37
+ def test_multiple_whitespace_mixed_in_string
38
+ skip
39
+ input = ' hsqq qww '
40
+ output = '2 hs2q q2w2 '
41
+ assert_equal output, RunLengthEncoding.encode(input)
42
+ end
43
+
44
+ def test_lowercase_characters
45
+ skip
46
+ input = 'aabbbcccc'
47
+ output = '2a3b4c'
48
+ assert_equal output, RunLengthEncoding.encode(input)
49
+ end
50
+
51
+ def test_empty_string
52
+ skip
53
+ input = ''
54
+ output = ''
55
+ assert_equal output, RunLengthEncoding.decode(input)
56
+ end
57
+
58
+ def test_single_characters_only
59
+ skip
60
+ input = 'XYZ'
61
+ output = 'XYZ'
62
+ assert_equal output, RunLengthEncoding.decode(input)
63
+ end
64
+
65
+ def test_string_with_no_single_characters
66
+ skip
67
+ input = '2A3B4C'
68
+ output = 'AABBBCCCC'
69
+ assert_equal output, RunLengthEncoding.decode(input)
70
+ end
71
+
72
+ def test_single_characters_with_repeated_characters
32
73
  skip
33
74
  input = '12WB12W3B24WB'
34
75
  output = 'WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB'
35
76
  assert_equal output, RunLengthEncoding.decode(input)
36
77
  end
37
78
 
38
- def test_decode_encode_combination
79
+ def test_multiple_whitespace_mixed_in_string
39
80
  skip
40
- input = 'zzz ZZ zZ'
41
- output = 'zzz ZZ zZ'
42
- assert_equal output,
43
- RunLengthEncoding.decode(RunLengthEncoding.encode(input))
81
+ input = '2 hs2q q2w2 '
82
+ output = ' hsqq qww '
83
+ assert_equal output, RunLengthEncoding.decode(input)
44
84
  end
45
85
 
46
- def test_encode_unicode
86
+ def test_lower_case_string
47
87
  skip
48
- input = '⏰⚽⚽⚽⭐⭐⏰'
49
- output = '⏰3⚽2⭐⏰'
50
- assert_equal output, RunLengthEncoding.encode(input)
88
+ input = '2a3b4c'
89
+ output = 'aabbbcccc'
90
+ assert_equal output, RunLengthEncoding.decode(input)
51
91
  end
52
92
 
53
- def test_decode_unicode
93
+ def test_encode_followed_by_decode_gives_original_string
54
94
  skip
55
- input = '⏰3⚽2⭐⏰'
56
- output = '⏰⚽⚽⚽⭐⭐⏰'
57
- assert_equal output, RunLengthEncoding.decode(input)
95
+ input = 'zzz ZZ zZ'
96
+ output = 'zzz ZZ zZ'
97
+ assert_equal output,
98
+ RunLengthEncoding.decode(RunLengthEncoding.encode(input))
58
99
  end
59
100
 
60
101
  # Problems in exercism evolve over time, as we find better ways to ask
@@ -63,8 +104,9 @@ class RunLengthEncodingTest < Minitest::Test
63
104
  # not your solution.
64
105
  #
65
106
  # Define a constant named VERSION inside of the top level BookKeeping
66
- # module.
67
- # In your file, it will look like this:
107
+ # module, which may be placed near the end of your file.
108
+ #
109
+ # In your file, it will look like this:
68
110
  #
69
111
  # module BookKeeping
70
112
  # VERSION = 1 # Where the version number matches the one in the test.
@@ -75,6 +117,6 @@ class RunLengthEncodingTest < Minitest::Test
75
117
 
76
118
  def test_bookkeeping
77
119
  skip
78
- assert_equal 2, BookKeeping::VERSION
120
+ assert_equal 3, BookKeeping::VERSION
79
121
  end
80
122
  end
@@ -1,17 +1,19 @@
1
1
  require 'minitest/autorun'
2
2
  require_relative 'say'
3
3
 
4
- # Test data version: <%= sha1 %>
5
- class SayTest < Minitest::Test<% test_cases.each do |test_case| %>
6
- def <%= test_case.test_name %>
4
+ # Common test data version: <%= abbreviated_commit_hash %>
5
+ class SayTest < Minitest::Test
6
+ <% test_cases.each do |test_case| %>
7
+ def <%= test_case.name %>
7
8
  <%= test_case.skipped %>
8
9
  <%= test_case.workload %>
9
10
  end
10
- <% end %>
11
11
 
12
+ <% end %>
12
13
  <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
14
+
13
15
  def test_bookkeeping
14
16
  skip
15
- assert_equal <%= version.next %>, BookKeeping::VERSION
17
+ assert_equal <%= version %>, BookKeeping::VERSION
16
18
  end
17
19
  end
@@ -1,7 +1,7 @@
1
1
  require 'minitest/autorun'
2
2
  require_relative 'say'
3
3
 
4
- # Test data version: e3bd4a2
4
+ # Common test data version: be403e1
5
5
  class SayTest < Minitest::Test
6
6
  def test_zero
7
7
  # skip
@@ -89,7 +89,7 @@ class SayTest < Minitest::Test
89
89
  end
90
90
  end
91
91
 
92
- def test_numbers_above_999_999_999_999_are_out_of_range
92
+ def test_numbers_above_999999999999_are_out_of_range
93
93
  skip
94
94
  question = 1_000_000_000_000
95
95
  assert_raises ArgumentError do
@@ -113,6 +113,7 @@ class SayTest < Minitest::Test
113
113
  #
114
114
  # If you are curious, read more about constants on RubyDoc:
115
115
  # http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
116
+
116
117
  def test_bookkeeping
117
118
  skip
118
119
  assert_equal 1, BookKeeping::VERSION
@@ -4,14 +4,17 @@ require 'minitest/autorun'
4
4
  require_relative 'sieve'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
- class SieveTest < Minitest::Test<% test_cases.each do |test_case| %>
7
+ class SieveTest < Minitest::Test
8
+ <% test_cases.each do |test_case| %>
8
9
  def <%= test_case.name %>
9
10
  <%= test_case.skipped %>
10
11
  expected = <%= test_case.expected_string %>
11
12
  assert_equal expected, Sieve.new(<%= test_case.limit %>).primes
12
13
  end
14
+
13
15
  <% end %>
14
16
  <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
+
15
18
  def test_bookkeeping
16
19
  skip
17
20
  assert_equal <%= version %>, BookKeeping::VERSION
@@ -3,9 +3,7 @@ gem 'minitest', '>= 5.0.0'
3
3
  require 'minitest/autorun'
4
4
  require_relative 'sieve'
5
5
 
6
- # Test data version:
7
- # 43d62d1
8
-
6
+ # Common test data version: f2b2693
9
7
  class SieveTest < Minitest::Test
10
8
  def test_no_primes_under_two
11
9
  # skip
@@ -5,16 +5,19 @@ require_relative 'tournament'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
7
  class TournamentTest < Minitest::Test
8
+
8
9
  <% test_cases.each do |test_case| %>
9
- def <%= test_case.test_name %>
10
+ def <%= test_case.name %>
10
11
  <%= test_case.skipped %>
11
12
  input = <%= test_case.input_text %>
12
13
  actual = <%= test_case.workload %>
13
14
  expected = <%= test_case.expect %>
14
15
  assert_equal expected, actual
15
16
  end
17
+
16
18
  <% end %>
17
19
  <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
20
+
18
21
  def test_bookkeeping
19
22
  skip
20
23
  assert_equal <%= version %>, BookKeeping::VERSION
@@ -3,8 +3,7 @@ gem 'minitest', '>= 5.0.0'
3
3
  require 'minitest/autorun'
4
4
  require_relative 'tournament'
5
5
 
6
- # Test data version:
7
- # 0a51cfc
6
+ # Common test data version: cda8f98
8
7
  class TournamentTest < Minitest::Test
9
8
 
10
9
  def test_typical_input
@@ -4,16 +4,19 @@ require 'minitest/autorun'
4
4
  require_relative 'transpose'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
- class TransposeTest < Minitest::Test<% test_cases.each do |test_case| %>
8
- def <%= test_case.test_name %>
7
+ class TransposeTest < Minitest::Test
8
+ <% test_cases.each do |test_case| %>
9
+ def <%= test_case.name %>
9
10
  <%= test_case.skipped %>
10
11
  input = <%= test_case.input_text %>
11
12
  actual = <%= test_case.workload %>
12
13
  expected = <%= test_case.expect %>
13
14
  assert_equal expected.strip, actual
14
15
  end
16
+
15
17
  <% end %>
16
18
  <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
19
+
17
20
  def test_bookkeeping
18
21
  skip
19
22
  assert_equal <%= version %>, BookKeeping::VERSION
@@ -3,8 +3,7 @@ gem 'minitest', '>= 5.0.0'
3
3
  require 'minitest/autorun'
4
4
  require_relative 'transpose'
5
5
 
6
- # Test data version:
7
- # 0a51cfc
6
+ # Common test data version: 6dba022
8
7
  class TransposeTest < Minitest::Test
9
8
  def test_empty_string
10
9
  # skip
@@ -4,16 +4,18 @@ require 'minitest/autorun'
4
4
  require_relative 'triangle'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
- class TriangleTest < Minitest::Test<% test_cases.each do |test_case| %>
8
- def <%= test_case.test_name %>
7
+ class TriangleTest < Minitest::Test
8
+ <% test_cases.each do |test_case| %>
9
+ def <%= test_case.name %>
9
10
  <%= test_case.skipped %>
10
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
17
20
  end
18
21
  end
19
-
@@ -3,8 +3,7 @@ gem 'minitest', '>= 5.0.0'
3
3
  require 'minitest/autorun'
4
4
  require_relative 'triangle'
5
5
 
6
- # Test data version:
7
- # b806246
6
+ # Common test data version: fa90b35
8
7
  class TriangleTest < Minitest::Test
9
8
  def test_triangle_is_equilateral_if_all_sides_are_equal
10
9
  # skip
@@ -130,4 +129,3 @@ class TriangleTest < Minitest::Test
130
129
  assert_equal 1, BookKeeping::VERSION
131
130
  end
132
131
  end
133
-
@@ -4,13 +4,16 @@ require 'minitest/autorun'
4
4
  require_relative 'two_bucket'
5
5
 
6
6
  # Common test data version: <%= abbreviated_commit_hash %>
7
- class TwoBucketTest < Minitest::Test<% test_cases.each do |test_case| %>
8
- def <%= test_case.test_name %><% if test_case.skipped? %>
9
- skip<% end %>
10
- <%= test_case.test_body %>
7
+ class TwoBucketTest < Minitest::Test
8
+ <% test_cases.each do |test_case| %>
9
+ def <%= test_case.name %>
10
+ <%= test_case.skipped %>
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,18 +3,17 @@ gem 'minitest', '>= 5.0.0'
3
3
  require 'minitest/autorun'
4
4
  require_relative 'two_bucket'
5
5
 
6
- # Test data version:
7
- # deb225e Implement canonical dataset for scrabble-score problem (#255)
8
-
6
+ # Common test data version: 7aa0b42
9
7
  class TwoBucketTest < Minitest::Test
10
- def test_bucket_one_3_bucket_two_5_goal_1_starting_one
8
+ def test_bucket_one_size_3_bucket_two_size_5_goal_1_start_with_bucket_one
9
+ # skip
11
10
  two_bucket = TwoBucket.new(3, 5, 1, 'one')
12
11
  assert_equal 4, two_bucket.moves
13
12
  assert_equal 'one', two_bucket.goal_bucket
14
13
  assert_equal 5, two_bucket.other_bucket
15
14
  end
16
15
 
17
- def test_bucket_one_3_bucket_two_5_goal_1_starting_two
16
+ def test_bucket_one_size_3_bucket_two_size_5_goal_1_start_with_bucket_two
18
17
  skip
19
18
  two_bucket = TwoBucket.new(3, 5, 1, 'two')
20
19
  assert_equal 8, two_bucket.moves
@@ -22,7 +21,7 @@ class TwoBucketTest < Minitest::Test
22
21
  assert_equal 3, two_bucket.other_bucket
23
22
  end
24
23
 
25
- def test_bucket_one_7_bucket_two_11_goal_2_starting_one
24
+ def test_bucket_one_size_7_bucket_two_size_11_goal_2_start_with_bucket_one
26
25
  skip
27
26
  two_bucket = TwoBucket.new(7, 11, 2, 'one')
28
27
  assert_equal 14, two_bucket.moves
@@ -30,7 +29,7 @@ class TwoBucketTest < Minitest::Test
30
29
  assert_equal 11, two_bucket.other_bucket
31
30
  end
32
31
 
33
- def test_bucket_one_7_bucket_two_11_goal_2_starting_two
32
+ def test_bucket_one_size_7_bucket_two_size_11_goal_2_start_with_bucket_two
34
33
  skip
35
34
  two_bucket = TwoBucket.new(7, 11, 2, 'two')
36
35
  assert_equal 18, two_bucket.moves
@@ -44,8 +43,9 @@ class TwoBucketTest < Minitest::Test
44
43
  # not your solution.
45
44
  #
46
45
  # Define a constant named VERSION inside of the top level BookKeeping
47
- # module.
48
- # In your file, it will look like this:
46
+ # module, which may be placed near the end of your file.
47
+ #
48
+ # In your file, it will look like this:
49
49
  #
50
50
  # module BookKeeping
51
51
  # VERSION = 1 # Where the version number matches the one in the test.