@lvce-editor/test-with-playwright-worker 16.2.0 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/workerMain.js +17 -10
  2. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  import { basename, join } from 'node:path';
2
2
  import { readdir } from 'node:fs/promises';
3
- import { expect, chromium } from '@playwright/test';
3
+ import { expect, firefox, chromium } from '@playwright/test';
4
4
  import net from 'node:net';
5
5
  import os from 'node:os';
6
6
  import { pathToFileURL } from 'node:url';
@@ -1203,25 +1203,27 @@ const getServerPath = async serverPath => {
1203
1203
 
1204
1204
  /**
1205
1205
  *
1206
- * @param {{signal:AbortSignal, headless:boolean}} options
1206
+ * @param {{browser:'chromium'|'firefox', signal:AbortSignal, headless:boolean}} options
1207
1207
  * @returns
1208
1208
  */
1209
1209
  const startBrowser = async ({
1210
+ browser,
1210
1211
  headless,
1211
1212
  signal
1212
1213
  }) => {
1213
- const browser = await chromium.launch({
1214
+ const launcher = browser === 'firefox' ? firefox : chromium;
1215
+ const browserInstance = await launcher.launch({
1214
1216
  headless
1215
1217
  });
1216
- const page = await browser.newPage();
1218
+ const page = await browserInstance.newPage();
1217
1219
  // eslint-disable-next-line @typescript-eslint/no-misused-promises
1218
1220
  signal.addEventListener('abort', async () => {
1219
1221
  await page.close();
1220
- await browser.close();
1222
+ await browserInstance.close();
1221
1223
  });
1222
1224
  // @ts-ignore
1223
1225
  return {
1224
- browser,
1226
+ browser: browserInstance,
1225
1227
  page
1226
1228
  };
1227
1229
  };
@@ -1265,10 +1267,11 @@ const startServer = async ({
1265
1267
 
1266
1268
  /**
1267
1269
  *
1268
- * @param {{signal:AbortSignal, headless: boolean, onlyExtension:string, testPath:string}} options
1270
+ * @param {{browser:'chromium'|'firefox', signal:AbortSignal, headless: boolean, onlyExtension:string, testPath:string}} options
1269
1271
  * @returns
1270
1272
  */
1271
1273
  const setupTests = async ({
1274
+ browser,
1272
1275
  headless,
1273
1276
  onlyExtension,
1274
1277
  serverPath,
@@ -1277,9 +1280,10 @@ const setupTests = async ({
1277
1280
  }) => {
1278
1281
  const port = await getPort();
1279
1282
  const {
1280
- browser,
1283
+ browser: browserInstance,
1281
1284
  page
1282
1285
  } = await startBrowser({
1286
+ browser,
1283
1287
  headless,
1284
1288
  signal
1285
1289
  });
@@ -1292,7 +1296,7 @@ const setupTests = async ({
1292
1296
  testPath
1293
1297
  });
1294
1298
  return {
1295
- browser,
1299
+ browser: browserInstance,
1296
1300
  child,
1297
1301
  page,
1298
1302
  port
@@ -1313,16 +1317,18 @@ const tearDownTests = async ({
1313
1317
  * @param {string} extensionPath
1314
1318
  * @param {string} testPath
1315
1319
  * @param {string} cwd
1320
+ * @param {'chromium'|'firefox'} browser
1316
1321
  * @param {boolean} headless
1317
1322
  * @param {number} timeout
1318
1323
  * @param {string} serverPath
1319
1324
  * @param {boolean} traceFocus
1320
1325
  * @param {string} filter
1321
1326
  */
1322
- const runAllTests = async (extensionPath, testPath, cwd, headless, timeout, serverPath, traceFocus, filter) => {
1327
+ const runAllTests = async (extensionPath, testPath, cwd, browser, headless, timeout, serverPath, traceFocus, filter) => {
1323
1328
  string(extensionPath);
1324
1329
  string(testPath);
1325
1330
  string(cwd);
1331
+ string(browser);
1326
1332
  boolean(headless);
1327
1333
  number(timeout);
1328
1334
  const rpc = get(Cli);
@@ -1336,6 +1342,7 @@ const runAllTests = async (extensionPath, testPath, cwd, headless, timeout, serv
1336
1342
  page,
1337
1343
  port
1338
1344
  } = await setupTests({
1345
+ browser,
1339
1346
  headless,
1340
1347
  onlyExtension: extensionPath,
1341
1348
  serverPath,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/test-with-playwright-worker",
3
- "version": "16.2.0",
3
+ "version": "17.0.0",
4
4
  "description": "Worker package for test-with-playwright",
5
5
  "repository": {
6
6
  "type": "git",
@@ -12,7 +12,7 @@
12
12
  "type": "module",
13
13
  "main": "dist/workerMain.js",
14
14
  "dependencies": {
15
- "@playwright/test": "1.59.1"
15
+ "@playwright/test": "1.60.0"
16
16
  },
17
17
  "engines": {
18
18
  "node": ">=24"