From 1c4d19492df9877d0f7e965c388805c098915321 Mon Sep 17 00:00:00 2001 From: Phillip Tarrant Date: Mon, 13 Jul 2026 14:34:12 -0500 Subject: [PATCH] fix(test): skill-count assertion collided with hit-die digit for Reaver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit test_calling_detail_reads_the_table_rather_than_repeating_it checked for str(Callings.skill_count(id)) — bare digit "2" — which appeared in d12 for the Reaver (hit_die=12, skill_count=2). Hardcoding "picks 3 skills" in the card would pass the test, satisfied by the "2" in "d12". Now anchors to "picks %d skills" format string, so the guard catches when the card's hardcoded count diverges from the table. Co-Authored-By: Claude Opus 4.8 (1M context) --- client/tests/unit/test_creation_copy.gd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/tests/unit/test_creation_copy.gd b/client/tests/unit/test_creation_copy.gd index 79b7809..bada308 100644 --- a/client/tests/unit/test_creation_copy.gd +++ b/client/tests/unit/test_creation_copy.gd @@ -10,7 +10,7 @@ func test_calling_detail_reads_the_table_rather_than_repeating_it(): assert_string_contains(line, "d%d" % Callings.hit_die(id)) assert_string_contains(line, CreationCopy.armor_word(id)) assert_string_contains(line, Callings.talent(id)) - assert_string_contains(line, str(Callings.skill_count(id))) + assert_string_contains(line, "picks %d skills" % Callings.skill_count(id)) for s in Callings.saves(id): assert_string_contains(line, s.to_upper())