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
@@ -4,18 +4,22 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'difference_of_squares'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class DifferenceOfSquaresTest < Minitest::Test
|
8
|
-
|
9
|
-
|
10
|
-
|
7
|
+
class DifferenceOfSquaresTest < 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
|
def test_consistent_difference
|
14
16
|
skip
|
15
17
|
squares = Squares.new(10)
|
16
18
|
assert_equal squares.difference, squares.difference
|
17
19
|
end
|
20
|
+
|
18
21
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
22
|
+
|
19
23
|
def test_bookkeeping
|
20
24
|
skip
|
21
25
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -6,7 +6,7 @@ require_relative 'dominoes'
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
7
|
class DominoesTest < Minitest::Test
|
8
8
|
<% test_cases.each do |test_case| %>
|
9
|
-
def <%= test_case.
|
9
|
+
def <%= test_case.name %>
|
10
10
|
<%= test_case.skipped %>
|
11
11
|
<%= test_case.workload %>
|
12
12
|
end
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
6
|
@@ -2,12 +2,13 @@ require 'minitest/autorun'
|
|
2
2
|
require_relative 'gigasecond'
|
3
3
|
|
4
4
|
# Common test data version: <%= abbreviated_commit_hash %>
|
5
|
-
class GigasecondTest < Minitest::Test
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
5
|
+
class GigasecondTest < Minitest::Test
|
6
|
+
<% test_cases.each do |test_case| %>
|
7
|
+
def <%= test_case.name %>
|
8
|
+
<%= test_case.skipped %>
|
9
|
+
<%= test_case.workload %>
|
10
10
|
end
|
11
|
+
|
11
12
|
<% end %>
|
12
13
|
# Test your 1Gs anniversary
|
13
14
|
def test_with_your_birthday
|
@@ -15,6 +16,7 @@ class GigasecondTest < Minitest::Test<% test_cases.each do |test_case| %>
|
|
15
16
|
end
|
16
17
|
|
17
18
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
19
|
+
|
18
20
|
def test_bookkeeping
|
19
21
|
assert_equal <%= version %>, BookKeeping::VERSION
|
20
22
|
end
|
@@ -1,36 +1,31 @@
|
|
1
1
|
require 'minitest/autorun'
|
2
2
|
require_relative 'gigasecond'
|
3
3
|
|
4
|
-
#
|
5
|
-
|
4
|
+
# Common test data version: 61e7d70
|
6
5
|
class GigasecondTest < Minitest::Test
|
7
|
-
def
|
8
|
-
|
9
|
-
assert_equal Time.utc(2043, 1, 1, 1, 46, 40),
|
6
|
+
def test_date_only_specification_of_time
|
7
|
+
# skip
|
8
|
+
assert_equal Time.utc(2043, 1, 1, 1, 46, 40), Gigasecond.from(Time.utc(2011, 4, 25, 0, 0, 0))
|
10
9
|
end
|
11
10
|
|
12
|
-
def
|
11
|
+
def test_second_test_for_date_only_specification_of_time
|
13
12
|
skip
|
14
|
-
|
15
|
-
assert_equal Time.utc(2009, 2, 19, 1, 46, 40), result
|
13
|
+
assert_equal Time.utc(2009, 2, 19, 1, 46, 40), Gigasecond.from(Time.utc(1977, 6, 13, 0, 0, 0))
|
16
14
|
end
|
17
15
|
|
18
|
-
def
|
16
|
+
def test_third_test_for_date_only_specification_of_time
|
19
17
|
skip
|
20
|
-
|
21
|
-
assert_equal Time.utc(1991, 3, 27, 1, 46, 40), result
|
18
|
+
assert_equal Time.utc(1991, 3, 27, 1, 46, 40), Gigasecond.from(Time.utc(1959, 7, 19, 0, 0, 0))
|
22
19
|
end
|
23
20
|
|
24
21
|
def test_full_time_specified
|
25
22
|
skip
|
26
|
-
|
27
|
-
assert_equal Time.utc(2046, 10, 2, 23, 46, 40), result
|
23
|
+
assert_equal Time.utc(2046, 10, 2, 23, 46, 40), Gigasecond.from(Time.utc(2015, 1, 24, 22, 0, 0))
|
28
24
|
end
|
29
25
|
|
30
26
|
def test_full_time_with_day_roll_over
|
31
27
|
skip
|
32
|
-
|
33
|
-
assert_equal Time.utc(2046, 10, 3, 1, 46, 39), result
|
28
|
+
assert_equal Time.utc(2046, 10, 3, 1, 46, 39), Gigasecond.from(Time.utc(2015, 1, 24, 23, 59, 59))
|
34
29
|
end
|
35
30
|
|
36
31
|
# Test your 1Gs anniversary
|
@@ -56,6 +51,6 @@ class GigasecondTest < Minitest::Test
|
|
56
51
|
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
57
52
|
|
58
53
|
def test_bookkeeping
|
59
|
-
assert_equal
|
54
|
+
assert_equal 6, BookKeeping::VERSION
|
60
55
|
end
|
61
56
|
end
|
@@ -2,14 +2,16 @@ require 'minitest/autorun'
|
|
2
2
|
require_relative 'grains'
|
3
3
|
|
4
4
|
# Common test data version: <%= abbreviated_commit_hash %>
|
5
|
-
class GrainsTest < Minitest::Test
|
6
|
-
|
5
|
+
class GrainsTest < 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
17
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'minitest/autorun'
|
2
2
|
require_relative 'grains'
|
3
3
|
|
4
|
-
#
|
4
|
+
# Common test data version: 2e0e77e
|
5
5
|
class GrainsTest < Minitest::Test
|
6
6
|
def test_1
|
7
7
|
# skip
|
@@ -74,6 +74,7 @@ class GrainsTest < Minitest::Test
|
|
74
74
|
#
|
75
75
|
# If you are curious, read more about constants on RubyDoc:
|
76
76
|
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
77
|
+
|
77
78
|
def test_bookkeeping
|
78
79
|
skip
|
79
80
|
assert_equal 1, BookKeeping::VERSION
|
@@ -15,7 +15,7 @@ end
|
|
15
15
|
# Common test data version: <%= abbreviated_commit_hash %>
|
16
16
|
class HelloWorldTest < Minitest::Test
|
17
17
|
<% test_cases.each do |test_case| %>
|
18
|
-
def <%= test_case.
|
18
|
+
def <%= test_case.name %>
|
19
19
|
<%= test_case.skipped %>
|
20
20
|
<%= test_case.workload %>
|
21
21
|
end
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3
|
@@ -5,14 +5,16 @@ require 'minitest/autorun'
|
|
5
5
|
require_relative 'isogram'
|
6
6
|
|
7
7
|
# Common test data version: <%= abbreviated_commit_hash %>
|
8
|
-
class IsogramTest < Minitest::Test
|
8
|
+
class IsogramTest < Minitest::Test
|
9
|
+
<% test_cases.each do |test_case| %>
|
9
10
|
def <%= test_case.name %>
|
10
|
-
<%= test_case.
|
11
|
-
|
12
|
-
<%= test_case.assertion %> Isogram.is_isogram?(string)
|
11
|
+
<%= test_case.skipped %>
|
12
|
+
<%= test_case.workload %>
|
13
13
|
end
|
14
|
+
|
14
15
|
<% end %>
|
15
16
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
17
|
+
|
16
18
|
def test_bookkeeping
|
17
19
|
skip
|
18
20
|
assert_equal <%= version %>, BookKeeping::VERSION
|
@@ -4,55 +4,62 @@ gem 'minitest', '>= 5.0.0'
|
|
4
4
|
require 'minitest/autorun'
|
5
5
|
require_relative 'isogram'
|
6
6
|
|
7
|
-
# Common test data version:
|
7
|
+
# Common test data version: 857c40d
|
8
8
|
class IsogramTest < Minitest::Test
|
9
9
|
def test_empty_string
|
10
10
|
# skip
|
11
|
-
string =
|
11
|
+
string = ""
|
12
12
|
assert Isogram.is_isogram?(string)
|
13
13
|
end
|
14
14
|
|
15
15
|
def test_isogram_with_only_lower_case_characters
|
16
16
|
skip
|
17
|
-
string =
|
17
|
+
string = "isogram"
|
18
18
|
assert Isogram.is_isogram?(string)
|
19
19
|
end
|
20
20
|
|
21
21
|
def test_word_with_one_duplicated_character
|
22
22
|
skip
|
23
|
-
string =
|
23
|
+
string = "eleven"
|
24
24
|
refute Isogram.is_isogram?(string)
|
25
25
|
end
|
26
26
|
|
27
27
|
def test_longest_reported_english_isogram
|
28
28
|
skip
|
29
|
-
string =
|
29
|
+
string = "subdermatoglyphic"
|
30
30
|
assert Isogram.is_isogram?(string)
|
31
31
|
end
|
32
32
|
|
33
33
|
def test_word_with_duplicated_character_in_mixed_case
|
34
34
|
skip
|
35
|
-
string =
|
35
|
+
string = "Alphabet"
|
36
36
|
refute Isogram.is_isogram?(string)
|
37
37
|
end
|
38
38
|
|
39
39
|
def test_hypothetical_isogrammic_word_with_hyphen
|
40
40
|
skip
|
41
|
-
string =
|
41
|
+
string = "thumbscrew-japingly"
|
42
42
|
assert Isogram.is_isogram?(string)
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_isogram_with_duplicated_non_letter_character
|
46
46
|
skip
|
47
|
-
string =
|
47
|
+
string = "Hjelmqvist-Gryb-Zock-Pfund-Wax"
|
48
48
|
assert Isogram.is_isogram?(string)
|
49
49
|
end
|
50
50
|
|
51
51
|
def test_made_up_name_that_is_an_isogram
|
52
52
|
skip
|
53
|
-
string =
|
53
|
+
string = "Emily Jung Schwartzkopf"
|
54
54
|
assert Isogram.is_isogram?(string)
|
55
55
|
end
|
56
|
+
|
57
|
+
def test_duplicated_character_in_the_middle
|
58
|
+
skip
|
59
|
+
string = "accentor"
|
60
|
+
refute Isogram.is_isogram?(string)
|
61
|
+
end
|
62
|
+
|
56
63
|
# Problems in exercism evolve over time, as we find better ways to ask
|
57
64
|
# questions.
|
58
65
|
# The version number refers to the version of the problem you solved,
|
@@ -69,8 +76,9 @@ class IsogramTest < Minitest::Test
|
|
69
76
|
#
|
70
77
|
# If you are curious, read more about constants on RubyDoc:
|
71
78
|
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
79
|
+
|
72
80
|
def test_bookkeeping
|
73
81
|
skip
|
74
|
-
assert_equal
|
82
|
+
assert_equal 3, BookKeeping::VERSION
|
75
83
|
end
|
76
84
|
end
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3
|
@@ -4,14 +4,16 @@ require 'minitest/autorun'
|
|
4
4
|
require_relative 'largest_series_product'
|
5
5
|
|
6
6
|
# Common test data version: <%= abbreviated_commit_hash %>
|
7
|
-
class Seriestest < Minitest::Test
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
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
12
|
end
|
13
|
+
|
13
14
|
<% end %>
|
14
15
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
16
|
+
|
15
17
|
def test_bookkeeping
|
16
18
|
assert_equal <%= version %>, BookKeeping::VERSION
|
17
19
|
end
|
@@ -3,11 +3,15 @@ gem 'minitest', '>= 5.0.0'
|
|
3
3
|
require 'minitest/autorun'
|
4
4
|
require_relative 'largest_series_product'
|
5
5
|
|
6
|
-
#
|
7
|
-
# deb225e Implement canonical dataset for scrabble-score problem (#255)
|
8
|
-
|
6
|
+
# Common test data version: e79b832
|
9
7
|
class Seriestest < Minitest::Test
|
8
|
+
def test_finds_the_largest_product_if_span_equals_length
|
9
|
+
# skip
|
10
|
+
assert_equal 18, Series.new('29').largest_product(2)
|
11
|
+
end
|
12
|
+
|
10
13
|
def test_can_find_the_largest_product_of_2_with_numbers_in_order
|
14
|
+
skip
|
11
15
|
assert_equal 72, Series.new('0123456789').largest_product(2)
|
12
16
|
end
|
13
17
|
|
@@ -16,11 +20,6 @@ class Seriestest < Minitest::Test
|
|
16
20
|
assert_equal 48, Series.new('576802143').largest_product(2)
|
17
21
|
end
|
18
22
|
|
19
|
-
def test_finds_the_largest_product_if_span_equals_length
|
20
|
-
skip
|
21
|
-
assert_equal 18, Series.new('29').largest_product(2)
|
22
|
-
end
|
23
|
-
|
24
23
|
def test_can_find_the_largest_product_of_3_with_numbers_in_order
|
25
24
|
skip
|
26
25
|
assert_equal 504, Series.new('0123456789').largest_product(3)
|
@@ -41,16 +40,6 @@ class Seriestest < Minitest::Test
|
|
41
40
|
assert_equal 23520, Series.new('73167176531330624919225119674426574742355349194934').largest_product(6)
|
42
41
|
end
|
43
42
|
|
44
|
-
def test_can_get_the_largest_product_of_a_big_number_ii
|
45
|
-
skip
|
46
|
-
assert_equal 28350, Series.new('52677741234314237566414902593461595376319419139427').largest_product(6)
|
47
|
-
end
|
48
|
-
|
49
|
-
def test_can_get_the_largest_product_of_a_big_number_project_euler
|
50
|
-
skip
|
51
|
-
assert_equal 23514624000, Series.new('7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450').largest_product(13)
|
52
|
-
end
|
53
|
-
|
54
43
|
def test_reports_zero_if_the_only_digits_are_zero
|
55
44
|
skip
|
56
45
|
assert_equal 0, Series.new('0000').largest_product(2)
|
@@ -97,8 +86,9 @@ class Seriestest < Minitest::Test
|
|
97
86
|
# not your solution.
|
98
87
|
#
|
99
88
|
# Define a constant named VERSION inside of the top level BookKeeping
|
100
|
-
# module.
|
101
|
-
#
|
89
|
+
# module, which may be placed near the end of your file.
|
90
|
+
#
|
91
|
+
# In your file, it will look like this:
|
102
92
|
#
|
103
93
|
# module BookKeeping
|
104
94
|
# VERSION = 1 # Where the version number matches the one in the test.
|
@@ -108,6 +98,6 @@ class Seriestest < Minitest::Test
|
|
108
98
|
# http://ruby-doc.org/docs/ruby-doc-bundle/UsersGuide/rg/constants.html
|
109
99
|
|
110
100
|
def test_bookkeeping
|
111
|
-
assert_equal
|
101
|
+
assert_equal 3, BookKeeping::VERSION
|
112
102
|
end
|
113
103
|
end
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3
|
@@ -13,14 +13,16 @@ class Date
|
|
13
13
|
alias julian_leap? leap?
|
14
14
|
end
|
15
15
|
|
16
|
-
class YearTest < Minitest::Test
|
16
|
+
class YearTest < Minitest::Test
|
17
|
+
<% test_cases.each do |test_case| %>
|
17
18
|
def <%= test_case.name %>
|
18
|
-
<%= test_case.
|
19
|
-
|
20
|
-
refute <%= test_case.do %>, "<%= test_case.failure_message%>"<% end%>
|
19
|
+
<%= test_case.skipped %>
|
20
|
+
<%= test_case.workload %>, "<%= test_case.failure_message %>"
|
21
21
|
end
|
22
|
+
|
22
23
|
<% end %>
|
23
24
|
<%= IO.read(XRUBY_LIB + '/bookkeeping.md') %>
|
25
|
+
|
24
26
|
def test_bookkeeping
|
25
27
|
skip
|
26
28
|
assert_equal <%= version %>, BookKeeping::VERSION
|