From 3d32482acca76659f663c00baccea195fda0eaae Mon Sep 17 00:00:00 2001 From: Natalie Date: Wed, 24 Jun 2026 04:19:41 -0400 Subject: [PATCH] =?UTF-8?q?test(@projects/@magic-civilization):=20?= =?UTF-8?q?=F0=9F=90=9B=20fix=20stale=20minimap=20fog-colour=20consts=20+?= =?UTF-8?q?=20traded=5Fluxuries=20typed-array=20assigns?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - test_minimap read MinimapScript.FOG_COLOR / UNEXPLORED_COLOR, but p2-87 moved those to ThemeAssets.color("fog.explored"/"fog.unexplored") instance vars. Read the tokens directly (same source minimap.gd uses). - test_save_load assigned untyped array literals to Player.traded_luxuries (Array[String]) through a RefCounted-typed ref → "Invalid assignment" type error. Use typed Array[String] locals. Co-Authored-By: Claude Opus 4.8 (1M context) --- .../tests/integration/test_save_load_round_trip.gd | 9 ++++++--- src/game/engine/tests/unit/test_minimap.gd | 5 +++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/game/engine/tests/integration/test_save_load_round_trip.gd b/src/game/engine/tests/integration/test_save_load_round_trip.gd index 14590d94..7e1d7759 100644 --- a/src/game/engine/tests/integration/test_save_load_round_trip.gd +++ b/src/game/engine/tests/integration/test_save_load_round_trip.gd @@ -26,7 +26,8 @@ func after_each() -> void: func test_traded_luxuries_round_trips() -> void: var p0: RefCounted = GameState.players[0] - p0.traded_luxuries = ["silk", "spices", "wine"] + var lux0: Array[String] = ["silk", "spices", "wine"] + p0.traded_luxuries = lux0 SaveManagerScript.save_game(0) GameState.players[0].traded_luxuries = [] @@ -42,7 +43,8 @@ func test_traded_luxuries_empty_round_trips() -> void: p0.traded_luxuries = [] SaveManagerScript.save_game(0) - GameState.players[0].traded_luxuries = ["iron"] + var lux_iron: Array[String] = ["iron"] + GameState.players[0].traded_luxuries = lux_iron var err: Error = SaveManagerScript.load_game(0) assert_eq(err, OK, "load_game must succeed") @@ -137,7 +139,8 @@ func test_wonders_built_empty_round_trips() -> void: func test_all_new_fields_round_trip_together() -> void: var p0: RefCounted = GameState.players[0] - p0.traded_luxuries = ["mithril_ore", "deepstone"] + var lux_m: Array[String] = ["mithril_ore", "deepstone"] + p0.traded_luxuries = lux_m p0.clan_id = "goldvein" GameState.wonders_built = {"world_pillar": 0} GameState.diplomacy = {"0_1": "peace"} diff --git a/src/game/engine/tests/unit/test_minimap.gd b/src/game/engine/tests/unit/test_minimap.gd index ebd7a770..cd913de1 100644 --- a/src/game/engine/tests/unit/test_minimap.gd +++ b/src/game/engine/tests/unit/test_minimap.gd @@ -34,8 +34,9 @@ func test_minimap_has_fog_state_triangulation() -> void: assert_true(mm.has_method("_get_tile_visibility"), "_get_tile_visibility() must triangulate fog state per tile") mm.free() - var fog: Color = MinimapScript.FOG_COLOR - var unexplored: Color = MinimapScript.UNEXPLORED_COLOR + # minimap.gd sources fog colours from ThemeAssets tokens (p2-87), not consts. + var fog: Color = ThemeAssets.color("fog.explored") + var unexplored: Color = ThemeAssets.color("fog.unexplored") assert_ne(fog, unexplored, "Seen-stale (FOG_COLOR) must render distinct from unexplored (UNEXPLORED_COLOR)") assert_lt(fog.a, unexplored.a,