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