mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
test_runner: fix it concurrency
PR-URL: https://github.com/nodejs/node/pull/43757 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Jacob Smith <jacob@frende.me>
This commit is contained in:
@@ -1,15 +1,14 @@
|
||||
'use strict';
|
||||
const {
|
||||
ArrayPrototypePush,
|
||||
ArrayPrototypeReduce,
|
||||
ArrayPrototypeShift,
|
||||
ArrayPrototypeUnshift,
|
||||
FunctionPrototype,
|
||||
Number,
|
||||
PromiseResolve,
|
||||
ReflectApply,
|
||||
SafeMap,
|
||||
PromiseRace,
|
||||
SafePromiseAll,
|
||||
} = primordials;
|
||||
const { AsyncResource } = require('async_hooks');
|
||||
const {
|
||||
@@ -506,10 +505,7 @@ class Suite extends Test {
|
||||
this.parent.activeSubtests++;
|
||||
this.startTime = hrtime();
|
||||
const subtests = this.skipped || this.error ? [] : this.subtests;
|
||||
await testTimeout(ArrayPrototypeReduce(subtests, async (prev, subtest) => {
|
||||
await prev;
|
||||
await subtest.run();
|
||||
}, PromiseResolve()), this.timeout);
|
||||
await SafePromiseAll(subtests, (subtests) => subtests.start());
|
||||
this.pass();
|
||||
this.postRun();
|
||||
}
|
||||
|
||||
@@ -188,6 +188,10 @@ ok 20 - immediate resolve pass
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
...
|
||||
1..1
|
||||
not ok 21 - subtest sync throw fail
|
||||
@@ -471,6 +475,9 @@ not ok 53 - custom inspect symbol that throws fail
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
...
|
||||
# Subtest: sync throw fails at second
|
||||
not ok 2 - sync throw fails at second
|
||||
@@ -486,6 +493,10 @@ not ok 53 - custom inspect symbol that throws fail
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
...
|
||||
1..2
|
||||
not ok 54 - subtest sync throw fails
|
||||
@@ -559,6 +570,8 @@ not ok 56 - describe async throw fails
|
||||
failureType: 'testTimeoutFailure'
|
||||
error: 'test timed out after 5ms'
|
||||
code: 'ERR_TEST_FAILURE'
|
||||
stack: |-
|
||||
*
|
||||
...
|
||||
# Subtest: timed out callback test
|
||||
not ok 2 - timed out callback test
|
||||
|
||||
Reference in New Issue
Block a user