From a333b03b30b53cf88648bf888b6af0b18d5f35ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A1s=20B=20Nagy?= <20251272+BNAndras@users.noreply.github.com> Date: Thu, 5 Nov 2026 07:55:39 -0800 Subject: [PATCH] [resistor-color] Add a test generator template. --- .../practice/resistor-color/.meta/template.j2 | 17 +++++++ .../resistor-color/resistor-color.spec.coffee | 50 +++++++++---------- 2 files changed, 40 insertions(+), 27 deletions(-) create mode 100644 exercises/practice/resistor-color/.meta/template.j2 diff --git a/exercises/practice/resistor-color/.meta/template.j2 b/exercises/practice/resistor-color/.meta/template.j2 new file mode 100644 index 00000000..3cfe6778 --- /dev/null +++ b/exercises/practice/resistor-color/.meta/template.j2 @@ -0,0 +1,17 @@ +{% macro assertion(case) -%} +{%- if case["property"] == "colors" -%} +expect({{ exercise_name | remove_spaces }}.colors()).toEqual {{ case["expected"] | format_multiline_list }} +{%- else -%} +expect({{ exercise_name | remove_spaces }}.colorCode {{ case["input"]["color"] | quote }}).toEqual {{ case["expected"] | quote }} +{%- endif -%} +{%- endmacro %} +{{ header }} + +{{ exercise_name | remove_spaces }} = require './{{ exercise_slug }}' + +describe {{ exercise_name | quote }}, -> +{% for case in cases %} + {{ case["test_keyword"] }} {{ case["description"] | quote }}, -> +{{ assertion(case) | indent(4, true) }} + +{% endfor %} diff --git a/exercises/practice/resistor-color/resistor-color.spec.coffee b/exercises/practice/resistor-color/resistor-color.spec.coffee index 02b0c9ec..6611ef16 100644 --- a/exercises/practice/resistor-color/resistor-color.spec.coffee +++ b/exercises/practice/resistor-color/resistor-color.spec.coffee @@ -1,33 +1,29 @@ +# These tests are auto-generated with test data from: +# https://github.com/exercism/problem-specifications/blob/main/exercises/resistor-color/canonical-data.json +# File last updated on 2026-11-05T15:54:19+00:00 + ResistorColor = require './resistor-color' -describe 'ResistorColor', -> - it 'Black', -> - results = ResistorColor.colorCode('black') - expected = 0 - expect(results).toEqual expected +describe "Resistor Color", -> + it "Black", -> + expect(ResistorColor.colorCode "black").toEqual 0 - xit 'White', -> - results = ResistorColor.colorCode('white') - expected = 9 - expect(results).toEqual expected + xit "White", -> + expect(ResistorColor.colorCode "white").toEqual 9 - xit 'Orange', -> - results = ResistorColor.colorCode('orange') - expected = 3 - expect(results).toEqual expected + xit "Orange", -> + expect(ResistorColor.colorCode "orange").toEqual 3 - xit 'Colors', -> - results = ResistorColor.colors() - expected = [ - 'black' - 'brown' - 'red' - 'orange' - 'yellow' - 'green' - 'blue' - 'violet' - 'grey' - 'white' + xit "Colors", -> + expect(ResistorColor.colors()).toEqual [ + "black" + "brown" + "red" + "orange" + "yellow" + "green" + "blue" + "violet" + "grey" + "white" ] - expect(results).toEqual expected