diff --git a/packages/playwright/src/isomorphic/teleReceiver.ts b/packages/playwright/src/isomorphic/teleReceiver.ts index da377b099f..6391f8a64c 100644 --- a/packages/playwright/src/isomorphic/teleReceiver.ts +++ b/packages/playwright/src/isomorphic/teleReceiver.ts @@ -19,8 +19,6 @@ import type { Metadata } from '../../types/test'; import type * as reporterTypes from '../../types/testReporter'; import type { ReporterV2 } from '../reporters/reporterV2'; -// -- Reuse boundary -- Everything below this line is reused in the vscode extension. - export type StringIntern = (s: string) => string; export type JsonLocation = reporterTypes.Location; export type JsonError = string; @@ -613,7 +611,7 @@ export function serializeRegexPatterns(patterns: string | RegExp | (string | Reg export function parseRegexPatterns(patterns: JsonPattern[]): (string | RegExp)[] { return patterns.map(p => { - if (p.s) + if (p.s !== undefined) return p.s; return new RegExp(p.r!.source, p.r!.flags); }); diff --git a/packages/playwright/src/isomorphic/testServerConnection.ts b/packages/playwright/src/isomorphic/testServerConnection.ts index aeda824429..156af26e8c 100644 --- a/packages/playwright/src/isomorphic/testServerConnection.ts +++ b/packages/playwright/src/isomorphic/testServerConnection.ts @@ -38,6 +38,7 @@ export class TestServerConnection implements TestServerInterface, TestServerInte private _ws: WebSocket; private _callbacks = new Map void, reject: (arg: Error) => void }>(); private _connectedPromise: Promise; + private _isClosed = false; constructor(wsURL: string) { this.onClose = this._onCloseEmitter.event; @@ -70,11 +71,16 @@ export class TestServerConnection implements TestServerInterface, TestServerInte this._ws.addEventListener('error', r); }); this._ws.addEventListener('close', () => { + this._isClosed = true; this._onCloseEmitter.fire(); clearInterval(pingInterval); }); } + isClosed(): boolean { + return this._isClosed; + } + private async _sendMessage(method: string, params?: any): Promise { const logForTest = (globalThis as any).__logForTest; logForTest?.({ method, params }); diff --git a/packages/playwright/src/reporters/teleEmitter.ts b/packages/playwright/src/reporters/teleEmitter.ts index df77370dd2..670a8c16c8 100644 --- a/packages/playwright/src/reporters/teleEmitter.ts +++ b/packages/playwright/src/reporters/teleEmitter.ts @@ -21,8 +21,6 @@ import type * as teleReceiver from '../isomorphic/teleReceiver'; import { serializeRegexPatterns } from '../isomorphic/teleReceiver'; import type { ReporterV2 } from './reporterV2'; -// -- Reuse boundary -- Everything below this line is reused in the vscode extension. - export type TeleReporterEmitterOptions = { omitOutput?: boolean; omitBuffers?: boolean;