GeezerVison is showing github.com — test_runner: verbous error when entire test tree is canceled · nodejs/node@b45ad00
File treeExpand file treeCollapse file tree Open diff view settings Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: lib/internal/test_runner/harness.js +4-2Lines changed: 4 additions & 2 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -14,7 +14,7 @@ const { | 14 | 14 | }, | 15 | 15 | } = require('internal/errors'); | 16 | 16 | const { getOptionValue } = require('internal/options'); | 17 | | -const { Test, ItTest, Suite } = require('internal/test_runner/test'); | | 17 | +const { kCancelledByParent, Test, ItTest, Suite } = require('internal/test_runner/test'); | 18 | 18 |
| 19 | 19 | const isTestRunner = getOptionValue('--test'); | 20 | 20 | const testResources = new SafeMap(); | @@ -77,7 +77,9 @@ function setup(root) { | 77 | 77 | createProcessEventHandler('unhandledRejection', root); | 78 | 78 |
| 79 | 79 | const exitHandler = () => { | 80 | | - root.postRun(); | | 80 | + root.postRun(new ERR_TEST_FAILURE( | | 81 | + 'Promise resolution is still pending but the event loop has already resolved', | | 82 | + kCancelledByParent)); | 81 | 83 |
| 82 | 84 | let passCount = 0; | 83 | 85 | let failCount = 0; | |
Collapse file Copy file name to clipboardExpand all lines: lib/internal/test_runner/test.js +4-4Lines changed: 4 additions & 4 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -511,7 +511,7 @@ class Test extends AsyncResource { | 511 | 511 | this.postRun(); | 512 | 512 | } | 513 | 513 |
| 514 | | - postRun() { | | 514 | + postRun(pendingSubtestsError) { | 515 | 515 | let failedSubtests = 0; | 516 | 516 |
| 517 | 517 | // If the test was failed before it even started, then the end time will | @@ -528,8 +528,8 @@ class Test extends AsyncResource { | 528 | 528 | const subtest = this.subtests[i]; | 529 | 529 |
| 530 | 530 | if (!subtest.finished) { | 531 | | - subtest.cancel(); | 532 | | - subtest.postRun(); | | 531 | + subtest.cancel(pendingSubtestsError); | | 532 | + subtest.postRun(pendingSubtestsError); | 533 | 533 | } | 534 | 534 |
| 535 | 535 | if (!subtest.passed) { | @@ -691,4 +691,4 @@ class Suite extends Test { | 691 | 691 | } | 692 | 692 | } | 693 | 693 |
| 694 | | -module.exports = { kDefaultIndent, kSubtestsFailed, kTestCodeFailure, Test, Suite, ItTest }; | | 694 | +module.exports = { kCancelledByParent, kDefaultIndent, kSubtestsFailed, kTestCodeFailure, Test, Suite, ItTest }; |
Collapse file Copy file name to clipboardExpand all lines: test/message/test_runner_no_refs.out +2-2Lines changed: 2 additions & 2 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -5,7 +5,7 @@ TAP version 13 | 5 | 5 | --- | 6 | 6 | duration_ms: * | 7 | 7 | failureType: 'cancelledByParent' | 8 | | - error: 'test did not finish before its parent and was cancelled' | | 8 | + error: 'Promise resolution is still pending but the event loop has already resolved' | 9 | 9 | code: 'ERR_TEST_FAILURE' | 10 | 10 | stack: |- | 11 | 11 | * | @@ -15,7 +15,7 @@ not ok 1 - does not keep event loop alive | 15 | 15 | --- | 16 | 16 | duration_ms: * | 17 | 17 | failureType: 'cancelledByParent' | 18 | | - error: 'test did not finish before its parent and was cancelled' | | 18 | + error: 'Promise resolution is still pending but the event loop has already resolved' | 19 | 19 | code: 'ERR_TEST_FAILURE' | 20 | 20 | stack: |- | 21 | 21 | * | |
Collapse file Copy file name to clipboardExpand all lines: test/message/test_runner_unresolved_promise.out +2-2Lines changed: 2 additions & 2 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -9,7 +9,7 @@ not ok 2 - never resolving promise | 9 | 9 | --- | 10 | 10 | duration_ms: * | 11 | 11 | failureType: 'cancelledByParent' | 12 | | - error: 'test did not finish before its parent and was cancelled' | | 12 | + error: 'Promise resolution is still pending but the event loop has already resolved' | 13 | 13 | code: 'ERR_TEST_FAILURE' | 14 | 14 | stack: |- | 15 | 15 | * | @@ -19,7 +19,7 @@ not ok 3 - fail | 19 | 19 | --- | 20 | 20 | duration_ms: 0 | 21 | 21 | failureType: 'cancelledByParent' | 22 | | - error: 'test did not finish before its parent and was cancelled' | | 22 | + error: 'Promise resolution is still pending but the event loop has already resolved' | 23 | 23 | code: 'ERR_TEST_FAILURE' | 24 | 24 | stack: |- | 25 | 25 | * | |
|