import process from 'node:process' import { chromium } from '@playwright/test' const cdpBaseUrl = (process.env.E2E_PLAYWRIGHT_CDP_URL ?? process.env.E2E_CDP_BASE_URL ?? '').trim() if (!cdpBaseUrl) { throw new Error('E2E_PLAYWRIGHT_CDP_URL or E2E_CDP_BASE_URL is required') } console.log(`PROBE cdp=${cdpBaseUrl}`) if (process.env.PROBE_PRECREATE_TARGET === '1') { console.log('PROBE precreate-target=start') await fetch(`${cdpBaseUrl}/json/new?about:blank`, { method: 'PUT' }).catch(async () => { await fetch(`${cdpBaseUrl}/json/new?about:blank`) }) console.log('PROBE precreate-target=done') } const browser = await chromium.connectOverCDP(cdpBaseUrl) console.log(`PROBE connected contexts=${browser.contexts().length}`) for (const [index, context] of browser.contexts().entries()) { console.log(`PROBE context[${index}] pages=${context.pages().length}`) } await browser.close() console.log('PROBE done')