// The shell's per-route layout: which paths are full-bleed, which get the // wide body. Run by `npm test`. import assert from "node:assert/strict"; import { test } from "node:test"; import { isFullBleedRoute, isWideBodyRoute } from "../src/shell/routes.ts"; test("the start page is full-bleed", () => { assert.equal(isFullBleedRoute("/"), true); }); test("the hive directory moved off / and is not full-bleed", () => { assert.equal(isFullBleedRoute("/hives"), false); assert.equal(isWideBodyRoute("/hives"), false); }); test("an agent's terminal and a subagent's are full-bleed", () => { assert.equal(isFullBleedRoute("/agents/iris/terminal"), true); assert.equal( isFullBleedRoute("/agents/iris/subagents/scout-1/terminal"), true, ); }); test("the agents page and other routes are not full-bleed", () => { for (const path of ["/agents", "/agents/iris", "/jobs", "/issues"]) { assert.equal(isFullBleedRoute(path), false, path); } }); test("a terminal path with extra segments is not full-bleed", () => { assert.equal(isFullBleedRoute("/agents/iris/terminal/extra"), false); assert.equal(isFullBleedRoute("/agents//terminal"), false); }); test("the wide-body routes are exactly the table pages", () => { for (const path of ["/issues", "/agents", "/review"]) { assert.equal(isWideBodyRoute(path), true, path); } for (const path of ["/", "/jobs", "/schedules", "/components"]) { assert.equal(isWideBodyRoute(path), false, path); } });