import { describe, expect, it } from "vitest"; import { CONTENT_ROUTE_IDS } from "./domains/content/routes"; import { ECONOMY_ROUTE_IDS } from "./domains/economy/routes"; import { HOTEL_ROUTE_IDS } from "./domains/hotel/routes"; import { OPERATIONS_ROUTES } from "./domains/operations/routes"; import { PEOPLE_ROUTE_IDS } from "./domains/people/routes"; import { SYSTEM_ROUTE_IDS } from "./domains/system/routes"; import { createHousekeepingRegistry } from "./foundation/registry"; import { HOUSEKEEPING_MANIFESTS } from "./manifests"; import { HOUSEKEEPING_ROUTE_HANDLERS } from "./route-handlers"; describe("housekeeping route handlers", () => { it("has exactly one handler for every registered route and no placeholders", () => { const registry = createHousekeepingRegistry(HOUSEKEEPING_MANIFESTS); const routeIds = registry.domains.flatMap((domain) => domain.routes.map((route) => route.id), ); const handlerIds = HOUSEKEEPING_ROUTE_HANDLERS.map( (handler) => handler.routeId, ); expect(new Set(handlerIds).size).toBe(handlerIds.length); expect([...handlerIds].sort()).toEqual([...routeIds].sort()); expect(handlerIds).toEqual([ ...OPERATIONS_ROUTES.map((route) => route.id), ...PEOPLE_ROUTE_IDS, ...CONTENT_ROUTE_IDS, ...ECONOMY_ROUTE_IDS, ...HOTEL_ROUTE_IDS, ...SYSTEM_ROUTE_IDS, ]); }); });