From eb833ee9b39680b37fa62441bb844eea988f8296 Mon Sep 17 00:00:00 2001 From: Natalie Date: Wed, 24 Jun 2026 04:52:13 -0400 Subject: [PATCH] =?UTF-8?q?test(@projects/@magic-civilization):=20?= =?UTF-8?q?=F0=9F=90=9B=20drive=20happiness=20luxuries=20via=20owned=5Flux?= =?UTF-8?q?uries=20map=20(was=20stale=20unique=5Fluxury=5Fcount)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Rust HappinessInput reads owned_luxuries: BTreeMap (value 0 ⇒ config LUXURY_HAPPINESS=4), but the test passed a unique_luxury_count int the Rust no longer reads → 0 luxury happiness. Pass a two-entry owned_luxuries map. Clears the last happiness assertions (test_happiness_turn 24 → 0 across the two commits). Co-Authored-By: Claude Opus 4.8 (1M context) --- src/game/engine/tests/integration/test_happiness_turn.gd | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/game/engine/tests/integration/test_happiness_turn.gd b/src/game/engine/tests/integration/test_happiness_turn.gd index 752328ab..142440ba 100644 --- a/src/game/engine/tests/integration/test_happiness_turn.gd +++ b/src/game/engine/tests/integration/test_happiness_turn.gd @@ -334,11 +334,13 @@ func test_luxury_count_adds_happiness_via_rust() -> void: var base_input: Dictionary = { "city_count": 1, "total_citizens": 3, "units_in_enemy_territory": 0, - "building_happiness": 0, "unique_luxury_count": 0, + "building_happiness": 0, "owned_luxuries": {}, "growth_tier": "balanced", } var zero: Dictionary = gd.call("calculate", JSON.stringify(base_input)) - base_input["unique_luxury_count"] = 2 + # Rust HappinessInput reads an owned_luxuries map (value 0 ⇒ config default + # LUXURY_HAPPINESS=4), not a unique_luxury_count int. Two entries ⇒ +8. + base_input["owned_luxuries"] = {"silk": 0, "wine": 0} var two: Dictionary = gd.call("calculate", JSON.stringify(base_input)) assert_eq(int(zero.get("luxury_happiness", 0)), 0, "zero luxuries must yield 0 luxury_happiness")