From 0194d50339ce1f49bdcc230062140e2042cc385a Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sun, 22 Feb 2026 08:03:17 +0000 Subject: [PATCH] test: stabilize pw-session cdp mocking in parallel runs --- ...pw-session.create-page.navigation-guard.test.ts | 14 +++++++++----- ...et-page-for-targetid.extension-fallback.test.ts | 14 +++++++++----- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/browser/pw-session.create-page.navigation-guard.test.ts b/src/browser/pw-session.create-page.navigation-guard.test.ts index fc3f249b952..ec9779fe8d8 100644 --- a/src/browser/pw-session.create-page.navigation-guard.test.ts +++ b/src/browser/pw-session.create-page.navigation-guard.test.ts @@ -1,7 +1,11 @@ +import { chromium } from "playwright-core"; import { afterEach, describe, expect, it, vi } from "vitest"; +import * as chromeModule from "./chrome.js"; import { InvalidBrowserNavigationUrlError } from "./navigation-guard.js"; import { closePlaywrightBrowserConnection, createPageViaPlaywright } from "./pw-session.js"; -import { connectOverCdpMock, getChromeWebSocketUrlMock } from "./pw-session.mock-setup.js"; + +const connectOverCdpSpy = vi.spyOn(chromium, "connectOverCDP"); +const getChromeWebSocketUrlSpy = vi.spyOn(chromeModule, "getChromeWebSocketUrl"); function installBrowserMocks() { const pageOn = vi.fn(); @@ -43,15 +47,15 @@ function installBrowserMocks() { close: browserClose, } as unknown as import("playwright-core").Browser; - connectOverCdpMock.mockResolvedValue(browser); - getChromeWebSocketUrlMock.mockResolvedValue(null); + connectOverCdpSpy.mockResolvedValue(browser); + getChromeWebSocketUrlSpy.mockResolvedValue(null); return { pageGoto, browserClose }; } afterEach(async () => { - connectOverCdpMock.mockReset(); - getChromeWebSocketUrlMock.mockReset(); + connectOverCdpSpy.mockReset(); + getChromeWebSocketUrlSpy.mockReset(); await closePlaywrightBrowserConnection().catch(() => {}); }); diff --git a/src/browser/pw-session.get-page-for-targetid.extension-fallback.test.ts b/src/browser/pw-session.get-page-for-targetid.extension-fallback.test.ts index 08edc7dd171..1dee05464e3 100644 --- a/src/browser/pw-session.get-page-for-targetid.extension-fallback.test.ts +++ b/src/browser/pw-session.get-page-for-targetid.extension-fallback.test.ts @@ -1,11 +1,15 @@ +import { chromium } from "playwright-core"; import { describe, expect, it, vi } from "vitest"; +import * as chromeModule from "./chrome.js"; import { closePlaywrightBrowserConnection, getPageForTargetId } from "./pw-session.js"; -import { connectOverCdpMock, getChromeWebSocketUrlMock } from "./pw-session.mock-setup.js"; + +const connectOverCdpSpy = vi.spyOn(chromium, "connectOverCDP"); +const getChromeWebSocketUrlSpy = vi.spyOn(chromeModule, "getChromeWebSocketUrl"); describe("pw-session getPageForTargetId", () => { it("falls back to the only page when CDP session attachment is blocked (extension relays)", async () => { - connectOverCdpMock.mockReset(); - getChromeWebSocketUrlMock.mockReset(); + connectOverCdpSpy.mockReset(); + getChromeWebSocketUrlSpy.mockReset(); const pageOn = vi.fn(); const contextOn = vi.fn(); @@ -34,8 +38,8 @@ describe("pw-session getPageForTargetId", () => { close: browserClose, } as unknown as import("playwright-core").Browser; - connectOverCdpMock.mockResolvedValue(browser); - getChromeWebSocketUrlMock.mockResolvedValue(null); + connectOverCdpSpy.mockResolvedValue(browser); + getChromeWebSocketUrlSpy.mockResolvedValue(null); const resolved = await getPageForTargetId({ cdpUrl: "http://127.0.0.1:18792",