Files
reverse-engineering-anything/src/browser/CdpCaptureEvents.coverageStart.test.ts
T

30 lines
1.2 KiB
TypeScript

import { afterEach, expect, it, vi } from "vitest";
import { inspectWebPageInputSchema } from "../domain/browserObservation.js";
import { CdpCaptureEvents } from "./CdpCaptureEvents.js";
afterEach(() => vi.useRealTimers());
it("starts each domain at its first event or enable acknowledgment, preserving events before the reply", () => {
vi.useFakeTimers();
vi.setSystemTime(new Date("2026-10-24T00:00:00.000Z"));
const events = new CdpCaptureEvents(
inspectWebPageInputSchema.parse({
cdp_endpoint: "http://127.0.0.1:9222",
target_id: "page",
allowed_origins: ["https://example.test"],
}),
new Set(["https://example.test"]),
);
events.beginAuthorizedFrame("main");
vi.setSystemTime(new Date("2026-10-24T00:00:01.000Z"));
events.ingest({
method: "Network.loadingFinished",
params: { requestId: "unobserved", encodedDataLength: 0 },
});
vi.setSystemTime(new Date("2026-10-24T00:00:02.000Z"));
events.markDomainEnabled("Network");
events.markDomainEnabled("Runtime");
expect(events.coverageStartedAt("Network")).toBe("2026-10-24T00:00:01.000Z");
expect(events.coverageStartedAt("Runtime")).toBe("2026-10-24T00:00:02.000Z");
});