#!/usr/bin/env node "use strict"; const assert = require("assert/strict"); const { parseCompletionMarker } = require("./lib/road-compiler-cli"); const input = { areaId: "fixture", outDir: "/tmp/fixture/native-road" }; const marker = `NATIVE_ROAD_COMPILE_DONE ${JSON.stringify({ areaId: input.areaId, output: input.outDir, roads: 1, endpoints: 2, diagnostics: 0 })}`; assert.equal(parseCompletionMarker(marker, input).areaId, input.areaId); assert.throws(() => parseCompletionMarker("compiler output", input), /exactly one/); assert.throws(() => parseCompletionMarker(`${marker}\n${marker}`, input), /exactly one/); assert.throws(() => parseCompletionMarker("NATIVE_ROAD_COMPILE_DONE {", input), /Invalid/); assert.throws(() => parseCompletionMarker("NATIVE_ROAD_COMPILE_DONE {\"areaId\":\"other\",\"output\":\"/tmp/fixture/native-road\"}", input), /areaId mismatch/); assert.throws(() => parseCompletionMarker("NATIVE_ROAD_COMPILE_DONE {\"areaId\":\"fixture\",\"output\":\"/tmp/other\"}", input), /output mismatch/); console.log("road compiler CLI tests passed");