trackler 2.1.0.2 → 2.1.0.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.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/common/exercises/phone-number/canonical-data.json +28 -10
  3. data/common/exercises/phone-number/description.md +19 -13
  4. data/lib/trackler/version.rb +1 -1
  5. data/tracks/go/exercises/bob/.meta/gen.go +1 -3
  6. data/tracks/go/exercises/bob/bob.go +1 -1
  7. data/tracks/go/exercises/bob/bob_test.go +1 -1
  8. data/tracks/go/exercises/bob/cases_test.go +8 -12
  9. data/tracks/go/exercises/bob/example.go +1 -1
  10. data/tracks/go/exercises/largest-series-product/.meta/gen.go +1 -3
  11. data/tracks/go/exercises/largest-series-product/cases_test.go +3 -4
  12. data/tracks/go/exercises/largest-series-product/example.go +1 -1
  13. data/tracks/go/exercises/largest-series-product/largest_series_product_test.go +1 -1
  14. data/tracks/java/exercises/accumulate/src/test/java/AccumulateTest.java +4 -4
  15. data/tracks/java/exercises/acronym/src/test/java/AcronymTest.java +7 -7
  16. data/tracks/java/exercises/all-your-base/src/test/java/BaseConverterTest.java +19 -19
  17. data/tracks/java/exercises/allergies/src/test/java/AllergiesTest.java +18 -18
  18. data/tracks/java/exercises/anagram/src/test/java/AnagramTest.java +15 -15
  19. data/tracks/lisp/docs/INSTALLATION.md +7 -13
  20. data/tracks/python/exercises/bracket-push/bracket_push_test.py +4 -1
  21. data/tracks/python/exercises/isogram/isogram_test.py +5 -1
  22. data/tracks/ruby/README.md +14 -40
  23. data/tracks/ruby/exercises/binary/binary_test.rb +0 -1
  24. data/tracks/ruby/exercises/bracket-push/bracket_push_test.rb +1 -1
  25. data/tracks/ruby/exercises/grains/grains_test.rb +2 -0
  26. data/tracks/ruby/exercises/isogram/isogram_test.rb +0 -1
  27. data/tracks/ruby/exercises/largest-series-product/largest_series_product_test.rb +2 -1
  28. data/tracks/ruby/exercises/luhn/luhn_test.rb +2 -0
  29. data/tracks/ruby/exercises/pangram/pangram_test.rb +0 -1
  30. data/tracks/ruby/exercises/queen-attack/queen_attack_test.rb +1 -1
  31. data/tracks/ruby/exercises/rna-transcription/rna_transcription_test.rb +1 -1
  32. data/tracks/ruby/exercises/run-length-encoding/run_length_encoding_test.rb +0 -1
  33. data/tracks/ruby/exercises/say/say_test.rb +2 -0
  34. data/tracks/ruby/exercises/word-count/word_count_test.rb +1 -1
  35. data/tracks/ruby/exercises/wordy/wordy_test.rb +2 -0
  36. data/tracks/ruby/lib/acronym_cases.rb +1 -1
  37. data/tracks/ruby/lib/all_your_base_cases.rb +1 -1
  38. data/tracks/ruby/lib/alphametics_cases.rb +1 -1
  39. data/tracks/ruby/lib/anagram_cases.rb +1 -1
  40. data/tracks/ruby/lib/beer_song_cases.rb +1 -1
  41. data/tracks/ruby/lib/binary_cases.rb +1 -1
  42. data/tracks/ruby/lib/bowling_cases.rb +1 -1
  43. data/tracks/ruby/lib/bracket_push_cases.rb +1 -1
  44. data/tracks/ruby/lib/clock_cases.rb +1 -1
  45. data/tracks/ruby/lib/connect_cases.rb +1 -1
  46. data/tracks/ruby/lib/custom_set_cases.rb +1 -1
  47. data/tracks/ruby/lib/difference_of_squares_cases.rb +1 -1
  48. data/tracks/ruby/lib/dominoes_cases.rb +1 -1
  49. data/tracks/ruby/lib/generator/files/generator_cases.rb +29 -0
  50. data/tracks/ruby/lib/generator/files/track_files.rb +11 -27
  51. data/tracks/ruby/lib/generator/template_values.rb +8 -2
  52. data/tracks/ruby/{exercises/anagram/example.tt → lib/generator/test_template.erb} +2 -2
  53. data/tracks/ruby/lib/gigasecond_cases.rb +1 -0
  54. data/tracks/ruby/lib/grains_cases.rb +1 -1
  55. data/tracks/ruby/lib/hamming_cases.rb +2 -0
  56. data/tracks/ruby/lib/hello_world_cases.rb +1 -1
  57. data/tracks/ruby/lib/isogram_cases.rb +1 -1
  58. data/tracks/ruby/lib/largest_series_product_cases.rb +1 -1
  59. data/tracks/ruby/lib/leap_cases.rb +1 -1
  60. data/tracks/ruby/lib/luhn_cases.rb +2 -0
  61. data/tracks/ruby/lib/nth_prime_cases.rb +1 -1
  62. data/tracks/ruby/lib/ocr_numbers_cases.rb +2 -0
  63. data/tracks/ruby/lib/pangram_cases.rb +1 -1
  64. data/tracks/ruby/lib/pig_latin_cases.rb +2 -0
  65. data/tracks/ruby/lib/queen_attack_cases.rb +1 -1
  66. data/tracks/ruby/lib/raindrops_cases.rb +1 -1
  67. data/tracks/ruby/lib/rna_transcription_cases.rb +1 -1
  68. data/tracks/ruby/lib/roman_numerals_cases.rb +1 -1
  69. data/tracks/ruby/lib/run_length_encoding_cases.rb +8 -6
  70. data/tracks/ruby/lib/say_cases.rb +1 -1
  71. data/tracks/ruby/lib/sieve_cases.rb +10 -3
  72. data/tracks/ruby/lib/tournament_cases.rb +1 -1
  73. data/tracks/ruby/lib/transpose_cases.rb +1 -1
  74. data/tracks/ruby/lib/triangle_cases.rb +1 -1
  75. data/tracks/ruby/lib/two_bucket_cases.rb +1 -1
  76. data/tracks/ruby/lib/word_count_cases.rb +12 -1
  77. data/tracks/ruby/lib/wordy_cases.rb +1 -1
  78. data/tracks/ruby/test/fixtures/xruby/lib/beta_cases.rb +1 -1
  79. data/tracks/ruby/{exercises/acronym/example.tt → test/fixtures/xruby/lib/generator/test_template.erb} +0 -0
  80. data/tracks/ruby/test/generator/files/generate_cases_test.rb +33 -0
  81. data/tracks/ruby/test/generator/files/track_files_test.rb +14 -28
  82. data/tracks/ruby/test/generator/template_values_test.rb +22 -4
  83. data/tracks/rust/config.json +10 -0
  84. data/tracks/rust/exercises/run-length-encoding/Cargo.lock +4 -0
  85. data/tracks/rust/exercises/run-length-encoding/Cargo.toml +6 -0
  86. data/tracks/rust/exercises/run-length-encoding/example.rs +45 -0
  87. data/tracks/rust/exercises/run-length-encoding/tests/run-length-encoding.rs +86 -0
  88. metadata +11 -29
  89. data/tracks/ruby/exercises/binary/example.tt +0 -22
  90. data/tracks/ruby/exercises/bracket-push/example.tt +0 -21
  91. data/tracks/ruby/exercises/clock/example.tt +0 -21
  92. data/tracks/ruby/exercises/custom-set/example.tt +0 -21
  93. data/tracks/ruby/exercises/grains/example.tt +0 -19
  94. data/tracks/ruby/exercises/hamming/example.tt +0 -21
  95. data/tracks/ruby/exercises/isogram/example.tt +0 -22
  96. data/tracks/ruby/exercises/largest-series-product/example.tt +0 -20
  97. data/tracks/ruby/exercises/luhn/example.tt +0 -18
  98. data/tracks/ruby/exercises/nth-prime/example.tt +0 -21
  99. data/tracks/ruby/exercises/ocr-numbers/example.tt +0 -21
  100. data/tracks/ruby/exercises/pangram/example.tt +0 -22
  101. data/tracks/ruby/exercises/pig-latin/example.tt +0 -21
  102. data/tracks/ruby/exercises/queen-attack/example.tt +0 -21
  103. data/tracks/ruby/exercises/raindrops/example.tt +0 -21
  104. data/tracks/ruby/exercises/rna-transcription/example.tt +0 -21
  105. data/tracks/ruby/exercises/roman-numerals/example.tt +0 -21
  106. data/tracks/ruby/exercises/run-length-encoding/example.tt +0 -24
  107. data/tracks/ruby/exercises/say/example.tt +0 -19
  108. data/tracks/ruby/exercises/sieve/example.tt +0 -22
  109. data/tracks/ruby/exercises/triangle/example.tt +0 -21
  110. data/tracks/ruby/exercises/two-bucket/example.tt +0 -21
  111. data/tracks/ruby/exercises/word-count/example.tt +0 -23
  112. data/tracks/ruby/exercises/wordy/example.tt +0 -19
  113. data/tracks/ruby/lib/exercise_cases.rb +0 -2
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- gem 'minitest', '>= 5.0.0'
4
- require 'minitest/autorun'
5
- require_relative 'binary'
6
-
7
- # Common test data version: <%= abbreviated_commit_hash %>
8
- class BinaryTest < Minitest::Test
9
- <% test_cases.each do |test_case| %>
10
- def <%= test_case.name %>
11
- <%= test_case.skipped %>
12
- <%= test_case.workload %>
13
- end
14
-
15
- <% end %>
16
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
-
18
- def test_bookkeeping
19
- skip
20
- assert_equal <%= version %>, BookKeeping::VERSION
21
- end
22
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'bracket_push'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class BracketsTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'clock'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class ClockTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'custom_set'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class CustomSetTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,19 +0,0 @@
1
- require 'minitest/autorun'
2
- require_relative 'grains'
3
-
4
- # Common test data version: <%= abbreviated_commit_hash %>
5
- class GrainsTest < Minitest::Test
6
- <% test_cases.each do |test_case| %>
7
- def <%= test_case.name %>
8
- <%= test_case.skipped %>
9
- <%= test_case.workload %>
10
- end
11
-
12
- <% end %>
13
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
14
-
15
- def test_bookkeeping
16
- skip
17
- assert_equal <%= version %>, BookKeeping::VERSION
18
- end
19
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'hamming'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class HammingTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- gem 'minitest', '>= 5.0.0'
4
- require 'minitest/autorun'
5
- require_relative 'isogram'
6
-
7
- # Common test data version: <%= abbreviated_commit_hash %>
8
- class IsogramTest < Minitest::Test
9
- <% test_cases.each do |test_case| %>
10
- def <%= test_case.name %>
11
- <%= test_case.skipped %>
12
- <%= test_case.workload %>
13
- end
14
-
15
- <% end %>
16
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
-
18
- def test_bookkeeping
19
- skip
20
- assert_equal <%= version %>, BookKeeping::VERSION
21
- end
22
- end
@@ -1,20 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'largest_series_product'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class Seriestest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- assert_equal <%= version %>, BookKeeping::VERSION
19
- end
20
- end
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'luhn'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class LuhnTest < Minitest::Test<% test_cases.each do |test_case| %>
8
- def <%= test_case.name %>
9
- <%= test_case.skipped %>
10
- <%= test_case.workload %>
11
- end
12
- <% end %>
13
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
14
- def test_bookkeeping
15
- skip
16
- assert_equal <%= version %>, BookKeeping::VERSION
17
- end
18
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'nth_prime'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class NthPrimeTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'ocr_numbers'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class OcrNumbersTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- gem 'minitest', '>= 5.0.0'
4
- require 'minitest/autorun'
5
- require_relative 'pangram'
6
-
7
- # Common test data version: <%= abbreviated_commit_hash %>
8
- class PangramTest < Minitest::Test
9
- <% test_cases.each do |test_case| %>
10
- def <%= test_case.name %>
11
- <%= test_case.skipped %>
12
- <%= test_case.workload %>
13
- end
14
-
15
- <% end %>
16
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
-
18
- def test_bookkeeping
19
- skip
20
- assert_equal <%= version %>, BookKeeping::VERSION
21
- end
22
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'pig_latin'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class PigLatinTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'queen_attack'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class QueenAttackTest < Minitest::Test
8
-
9
- <% test_cases.each do |test_case| %>
10
- def <%= test_case.name %>
11
- <%= test_case.skipped %>
12
- <%= test_case.workload %>
13
- end
14
-
15
- <% end %>
16
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'raindrops'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class RaindropsTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'rna_transcription'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class ComplementTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- <%= test_case.workload %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'roman_numerals'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
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 %>
12
- end
13
-
14
- <% end %>
15
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
16
-
17
- def test_bookkeeping
18
- skip
19
- assert_equal <%= version %>, BookKeeping::VERSION
20
- end
21
- end
@@ -1,24 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
- gem 'minitest', '>= 5.0.0'
4
- require 'minitest/autorun'
5
- require_relative 'run_length_encoding'
6
-
7
- # Common test data version: <%= abbreviated_commit_hash %>
8
- class RunLengthEncodingTest < Minitest::Test
9
- <% test_cases.each do |test_case| %>
10
- def <%= test_case.name %>
11
- <%= test_case.skipped %>
12
- <%= test_case.assign_input %>
13
- <%= test_case.assign_output %>
14
- <%= test_case.assertion %>
15
- end
16
-
17
- <% end %>
18
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
19
-
20
- def test_bookkeeping
21
- skip
22
- assert_equal <%= version %>, BookKeeping::VERSION
23
- end
24
- end
@@ -1,19 +0,0 @@
1
- require 'minitest/autorun'
2
- require_relative 'say'
3
-
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 %>
8
- <%= test_case.skipped %>
9
- <%= test_case.workload %>
10
- end
11
-
12
- <% end %>
13
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
14
-
15
- def test_bookkeeping
16
- skip
17
- assert_equal <%= version %>, BookKeeping::VERSION
18
- end
19
- end
@@ -1,22 +0,0 @@
1
- #!/usr/bin/env ruby
2
- gem 'minitest', '>= 5.0.0'
3
- require 'minitest/autorun'
4
- require_relative 'sieve'
5
-
6
- # Common test data version: <%= abbreviated_commit_hash %>
7
- class SieveTest < Minitest::Test
8
- <% test_cases.each do |test_case| %>
9
- def <%= test_case.name %>
10
- <%= test_case.skipped %>
11
- expected = <%= test_case.expected_string %>
12
- assert_equal expected, Sieve.new(<%= test_case.limit %>).primes
13
- end
14
-
15
- <% end %>
16
- <%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
17
-
18
- def test_bookkeeping
19
- skip
20
- assert_equal <%= version %>, BookKeeping::VERSION
21
- end
22
- end