NEO-99: Fix Bugbot dead code and GdUnit CI failures

Remove unused ENVIRONMENT preload (environment loads via main.tscn). Update
combat_targets_client_test for three prototype_npc_* rows; auto_free GLB
instances in visual catalog tests to avoid orphan exit code 101.
pull/134/head
VinPropane 2026-05-29 20:26:44 -04:00
parent d6b87f34b3
commit bbdebcd724
3 changed files with 8 additions and 8 deletions

View File

@ -4,8 +4,6 @@ extends Object
## Prop GLBs import as a wrapper root plus one child mesh node that still carries baked
## world transforms from Blender — see [method normalize_prop_visual].
const ENVIRONMENT: PackedScene = preload("res://assets/district/prototype_district_environment.glb")
const INTERACTABLE_PROPS: Dictionary = {
"prototype_terminal": preload("res://assets/district/props/terminal.glb"),
"prototype_resource_node_alpha": preload("res://assets/district/props/salvage_alpha.glb"),

View File

@ -30,7 +30,7 @@ class MockHttpTransport:
return OK
static func _two_target_snapshot_json() -> String:
static func _prototype_npc_snapshot_json() -> String:
return (
'{"schemaVersion":1,"targets":['
+ '{"targetId":"prototype_npc_melee","maxHp":100,"currentHp":75,"defeated":false},'
@ -52,7 +52,7 @@ func _make_client(transport: Node) -> Node:
func test_request_sync_gets_combat_targets_url() -> void:
# Arrange
var transport := MockHttpTransport.new()
transport.body_json = _two_target_snapshot_json()
transport.body_json = _prototype_npc_snapshot_json()
var c := _make_client(transport)
# Act
c.call("request_sync_from_server")
@ -63,7 +63,7 @@ func test_request_sync_gets_combat_targets_url() -> void:
func test_targets_received_emits_parsed_snapshot() -> void:
# Arrange
var transport := MockHttpTransport.new()
transport.body_json = _two_target_snapshot_json()
transport.body_json = _prototype_npc_snapshot_json()
var c := _make_client(transport)
var got: Array = []
c.connect("targets_received", func(snapshot: Dictionary) -> void: got.append(snapshot))
@ -74,13 +74,13 @@ func test_targets_received_emits_parsed_snapshot() -> void:
var snapshot: Dictionary = got[0]
var targets: Variant = snapshot.get("targets", null)
assert_that(targets is Array).is_true()
assert_that((targets as Array).size()).is_equal(2)
assert_that((targets as Array).size()).is_equal(3)
func test_target_row_returns_alpha_hp_fields() -> void:
func test_target_row_returns_melee_hp_fields() -> void:
# Arrange
var transport := MockHttpTransport.new()
transport.body_json = _two_target_snapshot_json()
transport.body_json = _prototype_npc_snapshot_json()
var c := _make_client(transport)
var got: Array = []
c.connect("targets_received", func(snapshot: Dictionary) -> void: got.append(snapshot))

View File

@ -8,6 +8,7 @@ func test_instantiate_prop_clears_baked_child_transform() -> void:
var packed: PackedScene = Catalog.INTERACTABLE_PROPS["prototype_resource_node_alpha"]
# Act
var visual: Node3D = Catalog.instantiate_prop(packed, 0.5)
auto_free(visual)
# Assert
var mesh: Node3D = visual.get_node("IX_SalvageAlpha_Mesh") as Node3D
assert_that(mesh.position).is_equal(Vector3.ZERO)
@ -17,6 +18,7 @@ func test_normalize_prop_visual_grounds_mesh_feet_at_floor() -> void:
# Arrange
var packed: PackedScene = Catalog.INTERACTABLE_PROPS["prototype_resource_node_alpha"]
var visual: Node3D = packed.instantiate() as Node3D
auto_free(visual)
var mesh: MeshInstance3D = visual.get_node("IX_SalvageAlpha_Mesh") as MeshInstance3D
var min_y: float = mesh.get_aabb().position.y
# Act