diff --git a/tests/browser-adaptive-exploration.test.ts b/tests/browser-adaptive-exploration.test.ts index ddda1360..e8c0bf3c 100644 --- a/tests/browser-adaptive-exploration.test.ts +++ b/tests/browser-adaptive-exploration.test.ts @@ -1,7 +1,7 @@ import assert from "node:assert/strict" import { createServer } from "node:http" import test from "node:test" -import { chromium, type Page } from "playwright" +import { chromium, type Browser, type Page } from "playwright" import { BROWSER_ADAPTIVE_EXPLORATION_SCHEMA, @@ -21,6 +21,16 @@ function environmentBoundOracleFingerprint(value: string): string { return browserAdaptiveDigest("oracle", { environmentDigest: browserAdaptiveExplorationContract({}).environmentDigest, value }) } +let browser: Browser + +test.before(async () => { + browser = await chromium.launch({ headless: true }) +}) + +test.after(async () => { + await browser.close() +}) + const modalFixture = ` @@ -63,6 +73,7 @@ document.querySelector('#open-overlay').addEventListener('click', () => { overlay.id = 'overlay'; overlay.innerHTML = ''; document.body.append(overlay); + globalThis.__wpCodeboxTestEvent?.('overlay-opened'); }); document.querySelector('#continue').addEventListener('click', () => { const count = document.querySelector('#count'); @@ -203,8 +214,8 @@ test("adaptive planner selects actions by HTML input type capability", () => { }) test("planned input actions execute safely in a real browser", async () => { - const browser = await chromium.launch({ headless: true }) - const page = await browser.newPage() + const context = await browser.newContext() + const page = await context.newPage() const fixture = `