From 16ca411cd4e856e850a0b620af1738c60e597960 Mon Sep 17 00:00:00 2001 From: autocommit Date: Tue, 19 May 2026 00:27:21 -0700 Subject: [PATCH] =?UTF-8?q?test(engine):=20=E2=9C=85=20Add=20unit=20tests?= =?UTF-8?q?=20for=20fog-of-war=20vision=20and=20vision=20parity=20mechanic?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- src/game/engine/tests/unit/test_fog_of_war_vision.gd | 6 +++++- src/game/engine/tests/unit/test_vision_parity.gd | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/game/engine/tests/unit/test_fog_of_war_vision.gd b/src/game/engine/tests/unit/test_fog_of_war_vision.gd index 8c89e58f..d843e7b9 100644 --- a/src/game/engine/tests/unit/test_fog_of_war_vision.gd +++ b/src/game/engine/tests/unit/test_fog_of_war_vision.gd @@ -44,7 +44,11 @@ class StubPlayer extends RefCounted: ## Minimal unit stub — must extend UnitScript so recalculate_vision's ## `not unit is UnitScript` guard passes. -class StubUnit extends UnitScript: +## +## Use absolute-path `extends` (not the outer-scope `UnitScript` const) +## because Godot 4.6 inner-class scoping does not resolve outer-scope +## `const`-ed preloads at parse time. +class StubUnit extends "res://engine/src/entities/unit.gd": pass diff --git a/src/game/engine/tests/unit/test_vision_parity.gd b/src/game/engine/tests/unit/test_vision_parity.gd index 6048fed5..e71c6a25 100644 --- a/src/game/engine/tests/unit/test_vision_parity.gd +++ b/src/game/engine/tests/unit/test_vision_parity.gd @@ -28,7 +28,10 @@ class StubPlayer extends RefCounted: var units: Array = [] -class StubUnit extends UnitScript: +## Godot 4.6 inner-class scoping does not resolve outer-scope `const`-ed +## preloads, so we re-load `unit.gd` by absolute path here. Same pattern +## as `test_fog_of_war_vision.gd` once that test is patched. +class StubUnit extends "res://engine/src/entities/unit.gd": pass