Skip to content

Commit 71cb893

Browse files
committed
fix: use --loader ts-node/esm for mocha test scripts
With module:nodenext, --require ts-node/register fails with "Unknown file extension .ts". Switch to --loader ts-node/esm with TS_NODE_TRANSPILE_ONLY=true to skip type checking. Also restore dev-server integration test and parse5-utils test script to master versions. Assisted-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 0cf541f commit 71cb893

17 files changed

Lines changed: 40 additions & 39 deletions

File tree

packages/browser-logs/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
29+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --reporter dot",
30+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --watch --watch-files src,test"
3131
},
3232
"files": [
3333
"*.d.ts",

packages/dev-server-core/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@
3838
"start:event-stream": "node demo/event-stream/start-server.js",
3939
"start:http2": "node demo/http2/start-server.js",
4040
"start:import-asset": "node demo/import-asset/start-server.js",
41-
"test": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --exit --reporter dot",
42-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
41+
"test": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --exit --reporter dot",
42+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --watch --watch-files src,test"
4343
},
4444
"files": [
4545
".self-signed-dev-server-ssl.cert",

packages/dev-server-esbuild/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@
2828
"build": "tsc",
2929
"start:demo:jsx": "es-dev-server --config demo/jsx/server.config.js",
3030
"start:demo:ts": "es-dev-server --config demo/ts/server.config.js",
31-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --reporter dot",
32+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --watch --watch-files src,test"
3333
},
3434
"files": [
3535
"*.d.ts",

packages/dev-server-hmr/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@
2828
"build": "tsc",
2929
"start:lit-html": "wds --config demo/lit-html/server.config.mjs",
3030
"start:vanilla": "wds --config demo/vanilla/server.config.mjs",
31-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --reporter dot",
32+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --watch --watch-files src,test"
3333
},
3434
"files": [
3535
"*.d.ts",

packages/dev-server-import-maps/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register",
29+
"test": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm",
3030
"test:browser": "node ../test-runner/dist/bin.js test-browser/test/**/*.test.{js,html} --config test-browser/web-test-runner.config.mjs",
31-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --watch --watch-files src,test"
3232
},
3333
"files": [
3434
"*.d.ts",

packages/dev-server-legacy/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
"scripts": {
2828
"build": "tsc",
2929
"start": "wds --open --config demo/server.config.mjs",
30-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
31-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
30+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --reporter dot",
31+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.ts\" --loader ts-node/esm --watch --watch-files src,test"
3232
},
3333
"files": [
3434
"*.d.ts",

packages/dev-server-rollup/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
"node": ">=24.0.0"
2626
},
2727
"scripts": {
28-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --exit --reporter dot",
29-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
28+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/node/**/*.test.ts\" --loader ts-node/esm --exit --reporter dot",
29+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/node/**/*.test.ts\" --loader ts-node/esm --watch --watch-files src,test"
3030
},
3131
"files": [
3232
"*.d.ts",

packages/dev-server/test/integration.test.mjs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { describe, it, before, after, beforeEach, afterEach } from 'node:test';
21
import puppeteer from 'puppeteer';
32
import path from 'path';
3+
import { fileURLToPath } from 'url';
44

5-
import { startDevServer } from '../dist/index.js';
5+
import { startDevServer } from '../index.mjs';
66

7-
const dirname = import.meta.dirname;
7+
const dirname = path.dirname(fileURLToPath(import.meta.url));
88

99
const testCases = [
1010
{
@@ -53,7 +53,8 @@ describe('integration tests', () => {
5353
});
5454

5555
for (const testCase of testCases) {
56-
describe(`testcase ${testCase.name}`, { timeout: 30000 }, () => {
56+
describe(`testcase ${testCase.name}`, function test() {
57+
this.timeout(30000);
5758
let server;
5859

5960
beforeEach(async () => {
@@ -68,7 +69,7 @@ describe('integration tests', () => {
6869
await server.stop();
6970
});
7071

71-
it('passes the in-browser tests', async () => {
72+
it('passes the in-browser tests', async function it() {
7273
const openPath = `/demo/${testCase.name}/`;
7374
const browserPath = `http://${server.config.hostname}:${server.config.port}${openPath}`;
7475
const page = await browser.newPage();

packages/parse5-utils/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch"
29+
"test:node": "mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30+
"test:watch": "mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch"
3131
},
3232
"files": [
3333
"dist",

packages/polyfills-loader/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30-
"test:update-snapshots": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --update-snapshots",
31-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
29+
"test:node": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --reporter dot",
30+
"test:update-snapshots": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --update-snapshots",
31+
"test:watch": "TS_NODE_TRANSPILE_ONLY=true mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --loader ts-node/esm --watch --watch-files src,test"
3232
},
3333
"files": [
3434
"*.d.ts",

0 commit comments

Comments
 (0)