summaryrefslogtreecommitdiff
path: root/cli/tests/node_compat/test/parallel/test-process-beforeexit.js
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/node_compat/test/parallel/test-process-beforeexit.js')
-rw-r--r--cli/tests/node_compat/test/parallel/test-process-beforeexit.js88
1 files changed, 0 insertions, 88 deletions
diff --git a/cli/tests/node_compat/test/parallel/test-process-beforeexit.js b/cli/tests/node_compat/test/parallel/test-process-beforeexit.js
deleted file mode 100644
index 7ac789c69..000000000
--- a/cli/tests/node_compat/test/parallel/test-process-beforeexit.js
+++ /dev/null
@@ -1,88 +0,0 @@
-// deno-fmt-ignore-file
-// deno-lint-ignore-file
-
-// Copyright Joyent and Node contributors. All rights reserved. MIT license.
-// Taken from Node 18.12.1
-// This file is automatically generated by `tools/node_compat/setup.ts`. Do not modify this file manually.
-
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-'use strict';
-const common = require('../common');
-const net = require('net');
-
-process.once('beforeExit', common.mustCall(tryImmediate));
-
-function tryImmediate() {
- setImmediate(common.mustCall(() => {
- process.once('beforeExit', common.mustCall(tryTimer));
- }));
-}
-
-function tryTimer() {
- setTimeout(common.mustCall(() => {
- process.once('beforeExit', common.mustCall(tryListen));
- }), 1);
-}
-
-function tryListen() {
- net.createServer()
- .listen(0)
- .on('listening', common.mustCall(function() {
- this.close();
- process.once('beforeExit', common.mustCall(tryRepeatedTimer));
- }));
-}
-
-// Test that a function invoked from the beforeExit handler can use a timer
-// to keep the event loop open, which can use another timer to keep the event
-// loop open, etc.
-//
-// After N times, call function `tryNextTick` to test behaviors of the
-// `process.nextTick`.
-function tryRepeatedTimer() {
- const N = 5;
- let n = 0;
- const repeatedTimer = common.mustCall(function() {
- if (++n < N)
- setTimeout(repeatedTimer, 1);
- else // n == N
- process.once('beforeExit', common.mustCall(tryNextTickSetImmediate));
- }, N);
- setTimeout(repeatedTimer, 1);
-}
-
-// Test if the callback of `process.nextTick` can be invoked.
-function tryNextTickSetImmediate() {
- process.nextTick(common.mustCall(function() {
- setImmediate(common.mustCall(() => {
- process.once('beforeExit', common.mustCall(tryNextTick));
- }));
- }));
-}
-
-// Test that `process.nextTick` won't keep the event loop running by itself.
-function tryNextTick() {
- process.nextTick(common.mustCall(function() {
- process.once('beforeExit', common.mustNotCall());
- }));
-}