diff --git a/exercises/practice/raindrops/.meta/test_template.erb b/exercises/practice/raindrops/.meta/test_template.erb new file mode 100644 index 0000000000..b1c3a6cf91 --- /dev/null +++ b/exercises/practice/raindrops/.meta/test_template.erb @@ -0,0 +1,13 @@ +require 'minitest/autorun' +require_relative 'raindrops' + +class RaindropsTest < Minitest::Test +<% json["cases"].each do |cases| %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + actual = Raindrops.convert(<%= cases["input"]["number"] %>) + expected = '<%= cases["expected"] %>' + assert_equal expected, actual + end + <% end %> +end diff --git a/exercises/practice/raindrops/raindrops_test.rb b/exercises/practice/raindrops/raindrops_test.rb index 7a3b0f3f85..5cdd867e12 100644 --- a/exercises/practice/raindrops/raindrops_test.rb +++ b/exercises/practice/raindrops/raindrops_test.rb @@ -4,91 +4,127 @@ class RaindropsTest < Minitest::Test def test_the_sound_for_1_is_1 # skip - assert_equal "1", Raindrops.convert(1) + actual = Raindrops.convert(1) + expected = '1' + assert_equal expected, actual end def test_the_sound_for_3_is_pling skip - assert_equal "Pling", Raindrops.convert(3) + actual = Raindrops.convert(3) + expected = 'Pling' + assert_equal expected, actual end def test_the_sound_for_5_is_plang skip - assert_equal "Plang", Raindrops.convert(5) + actual = Raindrops.convert(5) + expected = 'Plang' + assert_equal expected, actual end def test_the_sound_for_7_is_plong skip - assert_equal "Plong", Raindrops.convert(7) + actual = Raindrops.convert(7) + expected = 'Plong' + assert_equal expected, actual end def test_the_sound_for_6_is_pling_as_it_has_a_factor_3 skip - assert_equal "Pling", Raindrops.convert(6) + actual = Raindrops.convert(6) + expected = 'Pling' + assert_equal expected, actual end def test_2_to_the_power_3_does_not_make_a_raindrop_sound_as_3_is_the_exponent_not_the_base skip - assert_equal "8", Raindrops.convert(8) + actual = Raindrops.convert(8) + expected = '8' + assert_equal expected, actual end def test_the_sound_for_9_is_pling_as_it_has_a_factor_3 skip - assert_equal "Pling", Raindrops.convert(9) + actual = Raindrops.convert(9) + expected = 'Pling' + assert_equal expected, actual end def test_the_sound_for_10_is_plang_as_it_has_a_factor_5 skip - assert_equal "Plang", Raindrops.convert(10) + actual = Raindrops.convert(10) + expected = 'Plang' + assert_equal expected, actual end def test_the_sound_for_14_is_plong_as_it_has_a_factor_of_7 skip - assert_equal "Plong", Raindrops.convert(14) + actual = Raindrops.convert(14) + expected = 'Plong' + assert_equal expected, actual end def test_the_sound_for_15_is_plingplang_as_it_has_factors_3_and_5 skip - assert_equal "PlingPlang", Raindrops.convert(15) + actual = Raindrops.convert(15) + expected = 'PlingPlang' + assert_equal expected, actual end def test_the_sound_for_21_is_plingplong_as_it_has_factors_3_and_7 skip - assert_equal "PlingPlong", Raindrops.convert(21) + actual = Raindrops.convert(21) + expected = 'PlingPlong' + assert_equal expected, actual end def test_the_sound_for_25_is_plang_as_it_has_a_factor_5 skip - assert_equal "Plang", Raindrops.convert(25) + actual = Raindrops.convert(25) + expected = 'Plang' + assert_equal expected, actual end def test_the_sound_for_27_is_pling_as_it_has_a_factor_3 skip - assert_equal "Pling", Raindrops.convert(27) + actual = Raindrops.convert(27) + expected = 'Pling' + assert_equal expected, actual end def test_the_sound_for_35_is_plangplong_as_it_has_factors_5_and_7 skip - assert_equal "PlangPlong", Raindrops.convert(35) + actual = Raindrops.convert(35) + expected = 'PlangPlong' + assert_equal expected, actual end def test_the_sound_for_49_is_plong_as_it_has_a_factor_7 skip - assert_equal "Plong", Raindrops.convert(49) + actual = Raindrops.convert(49) + expected = 'Plong' + assert_equal expected, actual end def test_the_sound_for_52_is_52 skip - assert_equal "52", Raindrops.convert(52) + actual = Raindrops.convert(52) + expected = '52' + assert_equal expected, actual end def test_the_sound_for_105_is_plingplangplong_as_it_has_factors_3_5_and_7 skip - assert_equal "PlingPlangPlong", Raindrops.convert(105) + actual = Raindrops.convert(105) + expected = 'PlingPlangPlong' + assert_equal expected, actual end def test_the_sound_for_3125_is_plang_as_it_has_a_factor_5 skip - assert_equal "Plang", Raindrops.convert(3125) + actual = Raindrops.convert(3125) + expected = 'Plang' + assert_equal expected, actual end end diff --git a/exercises/practice/resistor-color-duo/.meta/test_template.erb b/exercises/practice/resistor-color-duo/.meta/test_template.erb new file mode 100644 index 0000000000..76a44b1c10 --- /dev/null +++ b/exercises/practice/resistor-color-duo/.meta/test_template.erb @@ -0,0 +1,13 @@ +require 'minitest/autorun' +require_relative 'resistor_color_duo' + +class ResistorColorDuoTest < Minitest::Test +<% json["cases"].each do |cases| %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + actual = ResistorColorDuo.value(<%= cases["input"]["colors"] %>) + expected = <%= cases["expected"] %> + assert_equal expected, actual + end +<% end %> +end diff --git a/exercises/practice/resistor-color-duo/resistor_color_duo_test.rb b/exercises/practice/resistor-color-duo/resistor_color_duo_test.rb index 208c772476..3a6cc6ed2f 100644 --- a/exercises/practice/resistor-color-duo/resistor_color_duo_test.rb +++ b/exercises/practice/resistor-color-duo/resistor_color_duo_test.rb @@ -4,36 +4,50 @@ class ResistorColorDuoTest < Minitest::Test def test_brown_and_black # skip - assert_equal 10, ResistorColorDuo.value(%w[brown black]) + actual = ResistorColorDuo.value(%w[brown black]) + expected = 10 + assert_equal expected, actual end def test_blue_and_grey skip - assert_equal 68, ResistorColorDuo.value(%w[blue grey]) + actual = ResistorColorDuo.value(%w[blue grey]) + expected = 68 + assert_equal expected, actual end def test_yellow_and_violet skip - assert_equal 47, ResistorColorDuo.value(%w[yellow violet]) + actual = ResistorColorDuo.value(%w[yellow violet]) + expected = 47 + assert_equal expected, actual end def test_white_and_red skip - assert_equal 92, ResistorColorDuo.value(%w[white red]) + actual = ResistorColorDuo.value(%w[white red]) + expected = 92 + assert_equal expected, actual end def test_orange_and_orange skip - assert_equal 33, ResistorColorDuo.value(%w[orange orange]) + actual = ResistorColorDuo.value(%w[orange orange]) + expected = 33 + assert_equal expected, actual end def test_ignore_additional_colors skip - assert_equal 51, ResistorColorDuo.value(%w[green brown orange]) + actual = ResistorColorDuo.value(%w[green brown orange]) + expected = 51 + assert_equal expected, actual end def test_black_and_brown_one_digit skip - assert_equal 1, ResistorColorDuo.value(%w[black brown]) + actual = ResistorColorDuo.value(%w[black brown]) + expected = 1 + assert_equal expected, actual end end diff --git a/exercises/practice/resistor-color-trio/.meta/test_template.erb b/exercises/practice/resistor-color-trio/.meta/test_template.erb new file mode 100644 index 0000000000..e79bdb435d --- /dev/null +++ b/exercises/practice/resistor-color-trio/.meta/test_template.erb @@ -0,0 +1,13 @@ +require 'minitest/autorun' +require_relative 'resistor_color_trio' + +class ResistorColorTrioTest < Minitest::Test +<% json["cases"].each do |cases| %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + actual = ResistorColorTrio.new(<%= cases["input"]["colors"] %>).label + expected = 'Resistor value: <%= cases["expected"]["value"] %> <%= cases["expected"]["unit"] %>' + assert_equal expected, actual + end +<% end %> +end diff --git a/exercises/practice/resistor-color/.meta/test_template.erb b/exercises/practice/resistor-color/.meta/test_template.erb new file mode 100644 index 0000000000..0f9bacc405 --- /dev/null +++ b/exercises/practice/resistor-color/.meta/test_template.erb @@ -0,0 +1,23 @@ +require 'minitest/autorun' +require_relative 'resistor_color' + +class ResistorColorTest < Minitest::Test +<% json["cases"].each do |cases| %> + <% if cases.is_a?(Hash) && cases.key?("cases") %> + <% cases["cases"].each do |sub_case| %> + def test_<%= underscore(sub_case["description"]) %> + <%= skip? %> + actual = ResistorColor.color_code('<%= sub_case["input"]["color"] %>') + expected = <%= sub_case["expected"] %> + assert_equal expected, actual + end + <% end %> + <% else %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + expected = <%= cases["expected"] %> + assert_equal expected, ResistorColor::COLORS + end + <% end%> + <% end %> +end diff --git a/exercises/practice/resistor-color/resistor_color_test.rb b/exercises/practice/resistor-color/resistor_color_test.rb index fa52c0be48..4ab3205ba2 100644 --- a/exercises/practice/resistor-color/resistor_color_test.rb +++ b/exercises/practice/resistor-color/resistor_color_test.rb @@ -4,17 +4,23 @@ class ResistorColorTest < Minitest::Test def test_black # skip - assert_equal 0, ResistorColor.color_code("black") + actual = ResistorColor.color_code('black') + expected = 0 + assert_equal expected, actual end def test_white skip - assert_equal 9, ResistorColor.color_code("white") + actual = ResistorColor.color_code('white') + expected = 9 + assert_equal expected, actual end def test_orange skip - assert_equal 3, ResistorColor.color_code("orange") + actual = ResistorColor.color_code('orange') + expected = 3 + assert_equal expected, actual end def test_colors diff --git a/exercises/practice/reverse-string/.meta/test_template.erb b/exercises/practice/reverse-string/.meta/test_template.erb new file mode 100644 index 0000000000..d3a648d5dc --- /dev/null +++ b/exercises/practice/reverse-string/.meta/test_template.erb @@ -0,0 +1,13 @@ +require 'minitest/autorun' +require_relative 'reverser' + +class ReverserTest < Minitest::Test +<% json["cases"].each do |cases| %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + actual = Reverser.reverse("<%= cases["input"]["value"] %>") + expected = "<%= cases["expected"] %>" + assert_equal expected, actual + end +<% end %> +end diff --git a/exercises/practice/reverse-string/.meta/tests.toml b/exercises/practice/reverse-string/.meta/tests.toml index 0c313cc537..52fda995cd 100644 --- a/exercises/practice/reverse-string/.meta/tests.toml +++ b/exercises/practice/reverse-string/.meta/tests.toml @@ -29,9 +29,12 @@ description = "an even-sized word" [1bed0f8a-13b0-4bd3-9d59-3d0593326fa2] description = "wide characters" +include = false [93d7e1b8-f60f-4f3c-9559-4056e10d2ead] description = "grapheme cluster with pre-combined form" +include = false [1028b2c1-6763-4459-8540-2da47ca512d9] description = "grapheme clusters" +include = false diff --git a/exercises/practice/reverse-string/reverse_string_test.rb b/exercises/practice/reverse-string/reverse_string_test.rb index adeb3675a3..ad04830e78 100644 --- a/exercises/practice/reverse-string/reverse_string_test.rb +++ b/exercises/practice/reverse-string/reverse_string_test.rb @@ -4,31 +4,43 @@ class ReverserTest < Minitest::Test def test_an_empty_string # skip - assert_equal "", Reverser.reverse("") + actual = Reverser.reverse("") + expected = "" + assert_equal expected, actual end def test_a_word skip - assert_equal "tobor", Reverser.reverse("robot") + actual = Reverser.reverse("robot") + expected = "tobor" + assert_equal expected, actual end def test_a_capitalized_word skip - assert_equal "nemaR", Reverser.reverse("Ramen") + actual = Reverser.reverse("Ramen") + expected = "nemaR" + assert_equal expected, actual end def test_a_sentence_with_punctuation skip - assert_equal "!yrgnuh m'I", Reverser.reverse("I'm hungry!") + actual = Reverser.reverse("I'm hungry!") + expected = "!yrgnuh m'I" + assert_equal expected, actual end def test_a_palindrome skip - assert_equal "racecar", Reverser.reverse("racecar") + actual = Reverser.reverse("racecar") + expected = "racecar" + assert_equal expected, actual end def test_an_even_sized_word skip - assert_equal "reward", Reverser.reverse("drawer") + actual = Reverser.reverse("drawer") + expected = "reward" + assert_equal expected, actual end end diff --git a/exercises/practice/rna-transcription/.meta/test_template.erb b/exercises/practice/rna-transcription/.meta/test_template.erb new file mode 100644 index 0000000000..5b0d9e02d5 --- /dev/null +++ b/exercises/practice/rna-transcription/.meta/test_template.erb @@ -0,0 +1,13 @@ +require 'minitest/autorun' +require_relative 'rna_transcription' + +class RnaTranscriptionTest < Minitest::Test +<% json["cases"].each do |cases| %> + def test_<%= underscore(cases["description"]) %> + <%= skip? %> + actual = Complement.of_dna('<%= cases["input"]["dna"] %>') + expected = '<%= cases["expected"] %>' + assert_equal expected, actual + end +<% end %> +end diff --git a/exercises/practice/rna-transcription/rna_transcription_test.rb b/exercises/practice/rna-transcription/rna_transcription_test.rb index 90a33dd9b8..c92e0fb469 100644 --- a/exercises/practice/rna-transcription/rna_transcription_test.rb +++ b/exercises/practice/rna-transcription/rna_transcription_test.rb @@ -4,31 +4,43 @@ class RnaTranscriptionTest < Minitest::Test def test_empty_rna_sequence # skip - assert_equal '', Complement.of_dna('') + actual = Complement.of_dna('') + expected = '' + assert_equal expected, actual end def test_rna_complement_of_cytosine_is_guanine skip - assert_equal 'G', Complement.of_dna('C') + actual = Complement.of_dna('C') + expected = 'G' + assert_equal expected, actual end def test_rna_complement_of_guanine_is_cytosine skip - assert_equal 'C', Complement.of_dna('G') + actual = Complement.of_dna('G') + expected = 'C' + assert_equal expected, actual end def test_rna_complement_of_thymine_is_adenine skip - assert_equal 'A', Complement.of_dna('T') + actual = Complement.of_dna('T') + expected = 'A' + assert_equal expected, actual end def test_rna_complement_of_adenine_is_uracil skip - assert_equal 'U', Complement.of_dna('A') + actual = Complement.of_dna('A') + expected = 'U' + assert_equal expected, actual end def test_rna_complement skip - assert_equal 'UGCACCAGAAUU', Complement.of_dna('ACGTGGTCTTAA') + actual = Complement.of_dna('ACGTGGTCTTAA') + expected = 'UGCACCAGAAUU' + assert_equal expected, actual end end