From 9b9f4ef1909ea436b2d29f39942ab50f973c6758 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Mon, 11 May 2026 21:59:33 +0200 Subject: [PATCH] Add validation tests for invalid target anchor configurations --- tests/domain/scene-document-validation.test.ts | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/tests/domain/scene-document-validation.test.ts b/tests/domain/scene-document-validation.test.ts index 036cb69a..2b0910b5 100644 --- a/tests/domain/scene-document-validation.test.ts +++ b/tests/domain/scene-document-validation.test.ts @@ -1343,6 +1343,12 @@ describe("validateSceneDocument", () => { actorId: "actor-town-targetable" }); (invalidTargetableNpc as { targetable: unknown }).targetable = "yes"; + const invalidTargetAnchorNpc = createNpcEntity({ + id: "entity-npc-invalid-target-anchor", + actorId: "actor-town-target-anchor" + }); + invalidTargetAnchorNpc.targetAnchor.mode = "feet" as never; + invalidTargetAnchorNpc.targetAnchor.offset.x = Number.NaN; const validation = validateSceneDocument({ ...createEmptySceneDocument(), @@ -1369,7 +1375,8 @@ describe("validateSceneDocument", () => { [wrongKindModelNpc.id]: wrongKindModelNpc, [duplicateActorNpc.id]: duplicateActorNpc, [invalidColliderNpc.id]: invalidColliderNpc, - [invalidTargetableNpc.id]: invalidTargetableNpc + [invalidTargetableNpc.id]: invalidTargetableNpc, + [invalidTargetAnchorNpc.id]: invalidTargetAnchorNpc } }); @@ -1394,6 +1401,14 @@ describe("validateSceneDocument", () => { expect.objectContaining({ code: "invalid-npc-targetable", path: "entities.entity-npc-invalid-targetable.targetable" + }), + expect.objectContaining({ + code: "invalid-npc-target-anchor-mode", + path: "entities.entity-npc-invalid-target-anchor.targetAnchor.mode" + }), + expect.objectContaining({ + code: "invalid-npc-target-anchor-offset", + path: "entities.entity-npc-invalid-target-anchor.targetAnchor.offset" }) ]) );