diff --git a/tests/materials.test.js b/tests/materials.test.js index e85c719..a4c8fc0 100644 --- a/tests/materials.test.js +++ b/tests/materials.test.js @@ -87,6 +87,10 @@ describe("Tiefenpuffer-Versatz je Schicht (gegen Flackern zwischen Boden/Stadt/P for (const key of POLYGON_OFFSET_ORDER) { expect(fake[key]).toMatchObject(POLYGON_OFFSETS[key]); } + // markings steht nicht in POLYGON_OFFSET_ORDER (eigener Versatz außerhalb der Rangfolge, + // s. Kommentar dort), bekommt seinen Versatz aber trotzdem über den zweiten Eintrag im + // POLYGON_OFFSETS-Objekt — einziger Beleg, dass der bis in ein Materialobjekt durchreicht. + expect(fake.markings).toEqual(POLYGON_OFFSETS.markings); for (const key of ["carriageway", "curb", "bridges", "buildings", "water", "seafloor"]) { expect(fake[key]).toEqual({}); } diff --git a/tests/props.test.js b/tests/props.test.js index ed95c49..1a6e16d 100644 --- a/tests/props.test.js +++ b/tests/props.test.js @@ -90,6 +90,12 @@ describe("Laternen auf dem Gehweg", () => { expect(sidewalkLampPoints([{ x: 0, z: 0, angle: 0 }], [])).toEqual([]); }); + it("lässt eine Laterne entfallen, wenn der Gehweg außerhalb aller Abstände liegt", () => { + // Der Gehweg beginnt erst bei 30 m, LAMP_VERGE deckt aber höchstens 12 m ab. + const fern = [{ poly: [[[-20, 30], [20, 30], [20, 33], [-20, 33]]] }]; + expect(sidewalkLampPoints([{ x: 0, z: 0, angle: 0 }], fern)).toEqual([]); + }); + it("hängt nicht an der Listenposition", () => { // Die alte Fassung wählte die Seite nach dem Index: Der zweite Punkt hätte auf der Seite ohne // Gehweg gesucht und wäre entfallen.