diff --git a/src/game/engine/tests/unit/test_wild_creature_ai.gd b/src/game/engine/tests/unit/test_wild_creature_ai.gd index 9bec687b..1a65657d 100644 --- a/src/game/engine/tests/unit/test_wild_creature_ai.gd +++ b/src/game/engine/tests/unit/test_wild_creature_ai.gd @@ -81,6 +81,9 @@ func _make_player_unit(owner_idx: int, pos: Vector2i) -> UnitScript: func test_find_attack_target_returns_null_when_no_player_units() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var wild: UnitScript = _make_wild_unit(Vector2i(0, 0)) GameState.layers = [{"units": [wild], "map": null}] assert_null( @@ -90,6 +93,9 @@ func test_find_attack_target_returns_null_when_no_player_units() -> void: func test_find_attack_target_detects_player_unit_in_range() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var wild: UnitScript = _make_wild_unit(Vector2i(0, 0)) var player_unit: UnitScript = _make_player_unit(0, Vector2i(3, 0)) GameState.layers = [{"units": [wild, player_unit], "map": null}] @@ -105,6 +111,9 @@ func test_find_attack_target_detects_player_unit_in_range() -> void: func test_find_attack_target_ignores_units_outside_radius() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var wild: UnitScript = _make_wild_unit(Vector2i(0, 0)) var far_unit: UnitScript = _make_player_unit(0, Vector2i(10, 0)) GameState.layers = [{"units": [wild, far_unit], "map": null}] @@ -115,6 +124,9 @@ func test_find_attack_target_ignores_units_outside_radius() -> void: func test_find_attack_target_ignores_other_wild_creatures() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var wild: UnitScript = _make_wild_unit(Vector2i(0, 0)) var other_wild: UnitScript = _make_wild_unit(Vector2i(2, 0)) GameState.layers = [{"units": [wild, other_wild], "map": null}] @@ -125,6 +137,9 @@ func test_find_attack_target_ignores_other_wild_creatures() -> void: func test_find_attack_target_returns_nearest_when_multiple() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var wild: UnitScript = _make_wild_unit(Vector2i(0, 0)) var close_unit: UnitScript = _make_player_unit(0, Vector2i(2, 0)) var far_unit: UnitScript = _make_player_unit(0, Vector2i(4, 0)) @@ -144,6 +159,9 @@ func test_find_attack_target_returns_nearest_when_multiple() -> void: func test_find_nearest_lair_returns_current_pos_when_no_buildings() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return _clear_npc_buildings() var pos: Vector2i = Vector2i(5, 5) var result: Vector2i = _wild_ai._find_nearest_lair(pos, 10) @@ -151,6 +169,9 @@ func test_find_nearest_lair_returns_current_pos_when_no_buildings() -> void: func test_find_nearest_lair_finds_lair_in_range() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var lair_pos: Vector2i = Vector2i(3, 3) _seed_lair("beast_den", lair_pos) @@ -159,6 +180,9 @@ func test_find_nearest_lair_finds_lair_in_range() -> void: func test_find_nearest_lair_ignores_villages() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return _seed_lair("village", Vector2i(2, 0)) var lair_pos: Vector2i = Vector2i(5, 0) _seed_lair("beast_den", lair_pos) @@ -168,6 +192,9 @@ func test_find_nearest_lair_ignores_villages() -> void: func test_find_nearest_lair_ignores_ruins() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return _seed_lair("ruin", Vector2i(1, 0)) var pos: Vector2i = Vector2i(0, 0) @@ -176,6 +203,9 @@ func test_find_nearest_lair_ignores_ruins() -> void: func test_find_nearest_lair_returns_closest_of_multiple() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var near_pos: Vector2i = Vector2i(3, 0) _seed_lair("dragon_lair", Vector2i(9, 0)) _seed_lair("spider_nest", near_pos) @@ -190,6 +220,9 @@ func test_find_nearest_lair_returns_closest_of_multiple() -> void: func test_outside_leash_true_when_beyond_radius() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return assert_true( _wild_ai._is_outside_leash(Vector2i(10, 0), Vector2i(0, 0), 5), "Must return true when unit is beyond leash radius" @@ -197,6 +230,9 @@ func test_outside_leash_true_when_beyond_radius() -> void: func test_outside_leash_false_when_within_radius() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return assert_false( _wild_ai._is_outside_leash(Vector2i(3, 0), Vector2i(0, 0), 5), "Must return false when unit is within leash radius" @@ -204,6 +240,9 @@ func test_outside_leash_false_when_within_radius() -> void: func test_outside_leash_false_at_home_position() -> void: + if ClassDB.class_exists("GdWildAiController"): + pending("Wild AI logic is now in Rust GdWildAiController (mc-ai::wild); legacy GDScript _ methods deleted in Rail-1 port. Rust coverage in mc-ai/tests + integration.") + return var home: Vector2i = Vector2i(5, 5) assert_false( _wild_ai._is_outside_leash(home, home, 3),