mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
test: force spec reporter in test-runner-watch-mode.mjs
In the CI this test generates TAP output that can confuse the Python test runner. Avoid the problem by not outputting TAP at from the spawned child process. Fixes: https://github.com/nodejs/node/issues/54535 PR-URL: https://github.com/nodejs/node/pull/54538 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
c6a72f2de4
commit
05bd3cfc73
@ -41,7 +41,8 @@ async function testWatch({ fileToUpdate, file, action = 'update' }) {
|
||||
const ran1 = util.createDeferredPromise();
|
||||
const ran2 = util.createDeferredPromise();
|
||||
const child = spawn(process.execPath,
|
||||
['--watch', '--test', file ? fixturePaths[file] : undefined].filter(Boolean),
|
||||
['--watch', '--test', '--test-reporter=spec',
|
||||
file ? fixturePaths[file] : undefined].filter(Boolean),
|
||||
{ encoding: 'utf8', stdio: 'pipe', cwd: tmpdir.path });
|
||||
let stdout = '';
|
||||
let currentRun = '';
|
||||
@ -50,7 +51,7 @@ async function testWatch({ fileToUpdate, file, action = 'update' }) {
|
||||
child.stdout.on('data', (data) => {
|
||||
stdout += data.toString();
|
||||
currentRun += data.toString();
|
||||
const testRuns = stdout.match(/# duration_ms\s\d+/g);
|
||||
const testRuns = stdout.match(/duration_ms\s\d+/g);
|
||||
if (testRuns?.length >= 1) ran1.resolve();
|
||||
if (testRuns?.length >= 2) ran2.resolve();
|
||||
});
|
||||
@ -71,10 +72,10 @@ async function testWatch({ fileToUpdate, file, action = 'update' }) {
|
||||
assert.strictEqual(runs.length, 2);
|
||||
|
||||
for (const run of runs) {
|
||||
assert.match(run, /# tests 1/);
|
||||
assert.match(run, /# pass 1/);
|
||||
assert.match(run, /# fail 0/);
|
||||
assert.match(run, /# cancelled 0/);
|
||||
assert.match(run, /tests 1/);
|
||||
assert.match(run, /pass 1/);
|
||||
assert.match(run, /fail 0/);
|
||||
assert.match(run, /cancelled 0/);
|
||||
}
|
||||
};
|
||||
|
||||
@ -94,10 +95,10 @@ async function testWatch({ fileToUpdate, file, action = 'update' }) {
|
||||
assert.strictEqual(runs.length, 2);
|
||||
|
||||
for (const run of runs) {
|
||||
assert.match(run, /# tests 1/);
|
||||
assert.match(run, /# pass 1/);
|
||||
assert.match(run, /# fail 0/);
|
||||
assert.match(run, /# cancelled 0/);
|
||||
assert.match(run, /tests 1/);
|
||||
assert.match(run, /pass 1/);
|
||||
assert.match(run, /fail 0/);
|
||||
assert.match(run, /cancelled 0/);
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user