Revert "test_runner: abort unfinished tests on async error"#52140
Closed
cjihrig wants to merge 1 commit intonodejs:mainfrom
Closed
Revert "test_runner: abort unfinished tests on async error"#52140cjihrig wants to merge 1 commit intonodejs:mainfrom
cjihrig wants to merge 1 commit intonodejs:mainfrom
Conversation
This reverts commit 29b2317. Fixes: nodejs#52139
Collaborator
|
Review requested:
|
lpinca
approved these changes
Mar 18, 2024
aduh95
approved these changes
Mar 18, 2024
Contributor
aduh95
left a comment
There was a problem hiding this comment.
On main: [03:05|% 20|+ 201|- 3]: Done
With this PR: [03:23|% 20|+ 204|- 0]: Done
Contributor
|
Fast-track has been requested by @aduh95. Please 👍 to approve. |
Collaborator
MoLow
approved these changes
Mar 18, 2024
Contributor
Author
|
FWIW, I think 16579d7 (by @aduh95) just needs to be applied to diff --git a/test/fixtures/test-runner/output/lcov_reporter.snapshot b/test/fixtures/test-runner/output/lcov_reporter.snapshot
index 11b2bc1039..adc3abb005 100644
--- a/test/fixtures/test-runner/output/lcov_reporter.snapshot
+++ b/test/fixtures/test-runner/output/lcov_reporter.snapshot
@@ -81,24 +81,26 @@ FN:310,anonymous_77
FN:313,anonymous_78
FN:318,anonymous_79
FN:319,anonymous_80
-FN:324,anonymous_81
-FN:329,anonymous_82
-FN:330,anonymous_83
+FN:320,anonymous_81
+FN:327,anonymous_82
+FN:328,anonymous_83
FN:335,anonymous_84
-FN:339,anonymous_85
-FN:342,get then
+FN:336,anonymous_85
+FN:341,anonymous_86
FN:345,anonymous_87
-FN:350,anonymous_88
-FN:353,get then
+FN:348,get then
+FN:351,anonymous_89
FN:356,anonymous_90
-FN:361,anonymous_91
+FN:359,get then
FN:362,anonymous_92
-FN:363,anonymous_93
-FN:367,anonymous_94
-FN:368,anonymous_95
-FN:369,anonymous_96
-FN:375,anonymous_97
-FN:379,anonymous_98
+FN:367,anonymous_93
+FN:368,anonymous_94
+FN:369,anonymous_95
+FN:373,anonymous_96
+FN:374,anonymous_97
+FN:375,anonymous_98
+FN:381,anonymous_99
+FN:385,anonymous_100
FNDA:1,anonymous_0
FNDA:1,anonymous_1
FNDA:1,anonymous_2
@@ -185,12 +187,12 @@ FNDA:1,anonymous_82
FNDA:1,anonymous_83
FNDA:1,anonymous_84
FNDA:1,anonymous_85
-FNDA:1,get then
+FNDA:1,anonymous_86
FNDA:1,anonymous_87
-FNDA:1,anonymous_88
FNDA:1,get then
+FNDA:1,anonymous_89
FNDA:1,anonymous_90
-FNDA:1,anonymous_91
+FNDA:1,get then
FNDA:1,anonymous_92
FNDA:1,anonymous_93
FNDA:1,anonymous_94
@@ -198,8 +200,10 @@ FNDA:1,anonymous_95
FNDA:1,anonymous_96
FNDA:1,anonymous_97
FNDA:1,anonymous_98
-FNF:99
-FNH:96
+FNDA:1,anonymous_99
+FNDA:1,anonymous_100
+FNF:101
+FNH:98
BRDA:1,0,0,1
BRDA:8,1,0,1
BRDA:12,2,0,1
@@ -279,30 +283,32 @@ BRDA:310,75,0,1
BRDA:313,76,0,1
BRDA:318,77,0,1
BRDA:319,78,0,1
-BRDA:324,79,0,1
-BRDA:329,80,0,1
-BRDA:330,81,0,1
+BRDA:320,79,0,1
+BRDA:327,80,0,1
+BRDA:328,81,0,1
BRDA:335,82,0,1
-BRDA:339,83,0,1
-BRDA:342,84,0,1
-BRDA:343,85,0,0
-BRDA:345,86,0,1
-BRDA:350,87,0,1
-BRDA:353,88,0,1
-BRDA:354,89,0,0
-BRDA:356,90,0,1
-BRDA:361,91,0,1
-BRDA:364,92,0,0
-BRDA:362,93,0,1
-BRDA:363,94,0,1
-BRDA:367,95,0,1
-BRDA:370,96,0,0
-BRDA:368,97,0,1
-BRDA:369,98,0,1
-BRDA:375,99,0,1
-BRDA:379,100,0,1
-BRF:101
-BRH:97
+BRDA:336,83,0,1
+BRDA:341,84,0,1
+BRDA:345,85,0,1
+BRDA:348,86,0,1
+BRDA:349,87,0,0
+BRDA:351,88,0,1
+BRDA:356,89,0,1
+BRDA:359,90,0,1
+BRDA:360,91,0,0
+BRDA:362,92,0,1
+BRDA:367,93,0,1
+BRDA:370,94,0,0
+BRDA:368,95,0,1
+BRDA:369,96,0,1
+BRDA:373,97,0,1
+BRDA:376,98,0,0
+BRDA:374,99,0,1
+BRDA:375,100,0,1
+BRDA:381,101,0,1
+BRDA:385,102,0,1
+BRF:103
+BRH:99
DA:1,1
DA:2,1
DA:3,1
@@ -702,6 +708,12 @@ DA:396,1
DA:397,1
DA:398,1
DA:399,1
-LH:397
-LF:399
+DA:400,1
+DA:401,1
+DA:402,1
+DA:403,1
+DA:404,1
+DA:405,1
+LH:403
+LF:405
end_of_record
diff --git a/test/fixtures/test-runner/output/output.js b/test/fixtures/test-runner/output/output.js
index 1557b4da4e..ff1b295877 100644
--- a/test/fixtures/test-runner/output/output.js
+++ b/test/fixtures/test-runner/output/output.js
@@ -317,12 +317,18 @@ test('subtest sync throw fails', async (t) => {
test('timed out async test', { timeout: 5 }, async (t) => {
return new Promise((resolve) => {
- setTimeout(resolve, 100);
+ setTimeout(() => {
+ // Empty timer so the process doesn't exit before the timeout triggers.
+ }, 5);
+ setTimeout(resolve, 30_000_000).unref();
});
});
test('timed out callback test', { timeout: 5 }, (t, done) => {
- setTimeout(done, 100);
+ setTimeout(() => {
+ // Empty timer so the process doesn't exit before the timeout triggers.
+ }, 5);
+ setTimeout(done, 30_000_000).unref();
});
|
cjihrig
added a commit
to cjihrig/node
that referenced
this pull request
Mar 18, 2024
This commit is similar to nodejs#51952. When the system is under load it is possible for these timeout tests to become flaky. We work around that by using a much longer setTimeout() in the test so that it is not racing against the test's timeout. But, we have to unref() such a large timeout. And, because test timeouts do not currently keep the event loop alive, we use a different setTimeout() for that purpose. Fixes: nodejs#52139 Refs: nodejs#52140
Contributor
Author
|
Closing in favor of #52146 |
nodejs-github-bot
pushed a commit
that referenced
this pull request
Mar 19, 2024
This commit is similar to #51952. When the system is under load it is possible for these timeout tests to become flaky. We work around that by using a much longer setTimeout() in the test so that it is not racing against the test's timeout. But, we have to unref() such a large timeout. And, because test timeouts do not currently keep the event loop alive, we use a different setTimeout() for that purpose. Fixes: #52139 Refs: #52140 PR-URL: #52146 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
rdw-msft
pushed a commit
to rdw-msft/node
that referenced
this pull request
Mar 26, 2024
This commit is similar to nodejs#51952. When the system is under load it is possible for these timeout tests to become flaky. We work around that by using a much longer setTimeout() in the test so that it is not racing against the test's timeout. But, we have to unref() such a large timeout. And, because test timeouts do not currently keep the event loop alive, we use a different setTimeout() for that purpose. Fixes: nodejs#52139 Refs: nodejs#52140 PR-URL: nodejs#52146 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
marco-ippolito
pushed a commit
that referenced
this pull request
May 2, 2024
This commit is similar to #51952. When the system is under load it is possible for these timeout tests to become flaky. We work around that by using a much longer setTimeout() in the test so that it is not racing against the test's timeout. But, we have to unref() such a large timeout. And, because test timeouts do not currently keep the event loop alive, we use a different setTimeout() for that purpose. Fixes: #52139 Refs: #52140 PR-URL: #52146 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
marco-ippolito
pushed a commit
that referenced
this pull request
May 3, 2024
This commit is similar to #51952. When the system is under load it is possible for these timeout tests to become flaky. We work around that by using a much longer setTimeout() in the test so that it is not racing against the test's timeout. But, we have to unref() such a large timeout. And, because test timeouts do not currently keep the event loop alive, we use a different setTimeout() for that purpose. Fixes: #52139 Refs: #52140 PR-URL: #52146 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This reverts commit 29b2317.
This appears to fix the flaky test. I'll take a look at fixing the original bug in more detail when I have the time.
Fixes: #52139