Files
HiveGrid-Wireframes/hivegrid-cloud/apps/web/app/entry.client.test.ts
T

19 lines
925 B
TypeScript

import { readFileSync } from "node:fs";
import { fileURLToPath } from "node:url";
import path from "node:path";
import { describe, expect, test } from "vitest";
const entrySource = readFileSync(path.join(path.dirname(fileURLToPath(import.meta.url)), "entry.client.tsx"), "utf8");
describe("entry.client hydration contract", () => {
test("starts observability before hydration without waiting indefinitely", () => {
expect(entrySource).toContain("const observabilityReady = initClientObservability().catch");
expect(entrySource).toContain("const OBSERVABILITY_HYDRATION_GRACE_MS = 250");
expect(entrySource).toContain("function waitForObservabilityHydrationGrace()");
expect(entrySource).toContain("Promise.race([observabilityReady, timeout])");
expect(entrySource).toContain("await waitForObservabilityHydrationGrace()");
expect(entrySource).not.toContain("await observabilityReady;");
});
});