import { expect, test } from "../support/browser/strict-browser-test.js"; import { successEnvelope } from "../mocks/contracts/envelopes.js"; import { ROUTE_REGISTRY } from "../../src/features/installed-feature-contracts.js"; test("opens the protected integration route through the local demo seam", async ({ page, }) => { const protectedRoute = Object.values(ROUTE_REGISTRY).find( (definition) => definition.access === "integration-defined", ); if (!protectedRoute) throw new Error("An integration route is required"); await page.route( "http://localhost:8080/api/reference-resources?*", (route) => route.fulfill({ json: successEnvelope([ { id: "browser-reference", name: "Browser reference", createdAt: "2026-07-26T00:00:00.000Z", }, ]), }), ); await page.goto(protectedRoute.path); await expect( page.getByRole("heading", { name: "세션이 필요합니다." }), ).toBeVisible(); await page.getByRole("button", { name: "로그인 시작" }).click(); await expect( page.getByRole("heading", { name: protectedRoute.title }), ).toBeVisible(); await expect(page.getByText("인증됨")).toBeVisible(); });