Skip to content

Commit 8850555

Browse files
andreubotelladanielleadams
authored andcommitted
test: work scheduled in process.nextTick can keep the event loop alive
PR-URL: #43787 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Ujjwal Sharma <ryzokuken@disroot.org>
1 parent cd0d9dd commit 8850555

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

test/parallel/test-process-beforeexit.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,21 @@ function tryRepeatedTimer() {
5959
if (++n < N)
6060
setTimeout(repeatedTimer, 1);
6161
else // n == N
62-
process.once('beforeExit', common.mustCall(tryNextTick));
62+
process.once('beforeExit', common.mustCall(tryNextTickSetImmediate));
6363
}, N);
6464
setTimeout(repeatedTimer, 1);
6565
}
6666

6767
// Test if the callback of `process.nextTick` can be invoked.
68+
function tryNextTickSetImmediate() {
69+
process.nextTick(common.mustCall(function() {
70+
setImmediate(common.mustCall(() => {
71+
process.once('beforeExit', common.mustCall(tryNextTick));
72+
}));
73+
}));
74+
}
75+
76+
// Test that `process.nextTick` won't keep the event loop running by itself.
6877
function tryNextTick() {
6978
process.nextTick(common.mustCall(function() {
7079
process.once('beforeExit', common.mustNotCall());

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy