From 05e2914ff391b47e5b0f63a0eca5500a9a150929 Mon Sep 17 00:00:00 2001 From: Kenso Grimm Date: Thu, 17 Sep 2026 22:15:26 +0200 Subject: [PATCH] =?UTF-8?q?test(world):=20letzte=20Verweise=20auf=20alte?= =?UTF-8?q?=20Chunk-Schl=C3=BCssel=20entfernen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit parkData.test.js prüfte die Fahrzeug-Startpunkte noch gegen c.roads, den es im neuen Chunk-Format nicht mehr gibt; jetzt gegen c.carriageway, die schärfere Aussage (das Auto steht auf der Fahrbahn, nicht nur irgendwo im alten, breiteren Korridor). materials.test.js und props.test.js trugen noch die toten Schlüssel roads/centerlines bzw. einen Kommentar auf centerlines() — beides Relikte vor dem Straßen-Umbau, ersatzlos entfernt bzw. auf edges umformuliert. Co-Authored-By: Claude Sonnet 5 --- tests/materials.test.js | 2 +- tests/parkData.test.js | 4 +++- tests/props.test.js | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/tests/materials.test.js b/tests/materials.test.js index a4c8fc0..632fe85 100644 --- a/tests/materials.test.js +++ b/tests/materials.test.js @@ -5,7 +5,7 @@ import { buildChunkGeometry } from "../src/world/geometry.js"; describe("materials", () => { it("deckt genau die Geometrie-Teile ab", () => { - const chunk = { chunk: [0, 0], origin: [0, 0], land: [], roads: [], centerlines: [], buildings: [], palms: [] }; + const chunk = { chunk: [0, 0], origin: [0, 0], land: [], buildings: [], palms: [] }; expect(Object.keys(buildChunkGeometry(chunk)).sort()).toEqual([...MATERIAL_KEYS].sort()); }); diff --git a/tests/parkData.test.js b/tests/parkData.test.js index ecd5d82..b5ee94d 100644 --- a/tests/parkData.test.js +++ b/tests/parkData.test.js @@ -49,10 +49,12 @@ describe("Flamingo-Park-Daten", () => { }); // Bruch: das Abschneiden am Park nimmt der 11th Street ein Stück, und ein Auto fällt beim Start durch. + // Gemessen wird gegen die Fahrbahn (carriageway), nicht den alten, breiteren Korridor: Ein stehendes + // Auto gehört auf die Fahrbahn selbst, das ist die schärfere Aussage. it("lässt die vier Autos auf einer Straße stehen", () => { for (const [x, , z] of VEHICLE_SPAWN_POINTS) { const c = chunkAt(x, -z); - expect(c.roads.some((road) => pointInPolygon(x - c.origin[0], z - c.origin[1], road.poly)), `${x} / ${-z}`).toBe(true); + expect(c.carriageway.some((road) => pointInPolygon(x - c.origin[0], z - c.origin[1], road.poly)), `${x} / ${-z}`).toBe(true); } }); }); diff --git a/tests/props.test.js b/tests/props.test.js index 1a6e16d..2bb71dc 100644 --- a/tests/props.test.js +++ b/tests/props.test.js @@ -17,7 +17,7 @@ describe("props", () => { }); it("stapelt an einer Kreuzung keine Laternen", () => { - // Zwei gegenüberliegende Äste, wie centerlines() sie seit Task 4 liefert. + // Zwei gegenüberliegende Äste, wie sie aus den edges des Straßengraphen entstehen. const pts = lampPoints([[[0, 0], [60, 0]], [[0, 0], [-60, 0]]], 35); const keys = new Set(pts.map((p) => `${p.x.toFixed(2)},${p.z.toFixed(2)}`)); expect(keys.size).toBe(pts.length);