fix: complete TechLog migration evidence
This commit is contained in:
@@ -372,18 +372,20 @@ describe("TechLog explore discovery", () => {
|
||||
).toHaveAttribute("href", "/explore");
|
||||
});
|
||||
|
||||
it("renders an unknown kind as the source production plain 404", async () => {
|
||||
it("keeps the unreachable unknown-kind client fallback accessible", async () => {
|
||||
const { router, container } = renderDiscoveryRoute(
|
||||
"TECH_LOG_EXPLORE_KIND",
|
||||
"/explore/unknown",
|
||||
);
|
||||
|
||||
expect(router.state.location.pathname).toBe("/explore/unknown");
|
||||
expect(await screen.findByText("Not Found", { exact: true })).toBeVisible();
|
||||
expect(
|
||||
await screen.findByRole("heading", { name: "페이지를 찾을 수 없습니다." }),
|
||||
).toBeVisible();
|
||||
expect(
|
||||
screen.queryByRole("heading", { name: "화면을 표시하지 못했습니다." }),
|
||||
).not.toBeInTheDocument();
|
||||
expect(container.querySelector(".site-frame")).toBeNull();
|
||||
expect(container.querySelector(".site-frame")).not.toBeNull();
|
||||
});
|
||||
|
||||
it("recovers a rejecting registered not-found runtime under its own chunk contract", async () => {
|
||||
|
||||
@@ -337,12 +337,14 @@ describe("TechLog topics and Public not-found routing", () => {
|
||||
["TECH_LOG_REFERENCE" as const, "/references/not-registered"],
|
||||
["TECH_LOG_QUESTION" as const, "/questions/not-registered"],
|
||||
["TECH_LOG_TOPIC" as const, "/topics/not-registered"],
|
||||
])("uses the source production plain 404 for %s", async (routeId, path) => {
|
||||
])("keeps the unreachable client fallback accessible for %s", async (routeId, path) => {
|
||||
const { container, router } = renderDocumentRoute(routeId, path);
|
||||
|
||||
expect(router.state.location.pathname).toBe(path);
|
||||
expect(await screen.findByText("Not Found", { exact: true })).toBeVisible();
|
||||
expect(
|
||||
await screen.findByRole("heading", { name: "페이지를 찾을 수 없습니다." }),
|
||||
).toBeVisible();
|
||||
expect(screen.queryByRole("heading", { name: "화면을 표시하지 못했습니다." })).not.toBeInTheDocument();
|
||||
expect(container.querySelector(".site-frame")).toBeNull();
|
||||
expect(container.querySelector(".site-frame")).not.toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -360,25 +360,29 @@ describe("TechLog Public not-found runtime", () => {
|
||||
["TECH_LOG_PROJECT_RECORDS" as const, "/projects/missing-project/records"],
|
||||
["TECH_LOG_RELEASE" as const, "/releases/9.9.9"],
|
||||
["TECH_LOG_CASE" as const, "/cases/not-registered"],
|
||||
])("renders the source-compatible plain fallback for %s", async (routeId, path) => {
|
||||
])("keeps the client-only fallback accessible for %s", async (routeId, path) => {
|
||||
const { container, router } = renderPublicRoute(routeId, path);
|
||||
|
||||
expect(router.state.location.pathname).toBe(path);
|
||||
expect(await screen.findByText("Not Found", { exact: true })).toBeVisible();
|
||||
expect(
|
||||
await screen.findByRole("heading", { name: "페이지를 찾을 수 없습니다." }),
|
||||
).toBeVisible();
|
||||
expect(
|
||||
screen.queryByRole("heading", { name: "화면을 표시하지 못했습니다." }),
|
||||
).not.toBeInTheDocument();
|
||||
expect(container.querySelector(".site-frame")).toBeNull();
|
||||
expect(container.querySelector(".site-frame")).not.toBeNull();
|
||||
});
|
||||
|
||||
it("renders the source-compatible plain fallback for the Public catch-all", () => {
|
||||
it("keeps the client-only Public catch-all accessible", () => {
|
||||
const { container, router } = renderPublicRoute(
|
||||
"NOT_FOUND",
|
||||
"/definitely-not-a-product-route",
|
||||
);
|
||||
|
||||
expect(router.state.location.pathname).toBe("/definitely-not-a-product-route");
|
||||
expect(screen.getByText("Not Found", { exact: true })).toBeVisible();
|
||||
expect(container.querySelector(".site-frame")).toBeNull();
|
||||
expect(
|
||||
screen.getByRole("heading", { name: "페이지를 찾을 수 없습니다." }),
|
||||
).toBeVisible();
|
||||
expect(container.querySelector(".site-frame")).not.toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user