mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
df08779e0d
This commit removes `common.crashOnUnhandledRejection()` and adds `common.disableCrashOnUnhandledRejection()`. To reduce the risk of mistakes and make writing tests that involve promises simpler, always install the unhandledRejection hook in tests and provide a way to disable it for the rare cases where it's needed. PR-URL: https://github.com/nodejs/node/pull/21849 Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
33 lines
739 B
JavaScript
33 lines
739 B
JavaScript
// Flags: --expose-internals
|
|
'use strict';
|
|
const common = require('../common');
|
|
|
|
common.skipIfInspectorDisabled();
|
|
|
|
const assert = require('assert');
|
|
const { NodeInstance } = require('../common/inspector-helper.js');
|
|
|
|
async function testHttp(child, number) {
|
|
try {
|
|
await child.httpGet(null, '/json/list');
|
|
return true;
|
|
} catch (e) {
|
|
console.error(`Attempt ${number} failed`, e);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
async function runTest() {
|
|
const child = new NodeInstance(undefined, '');
|
|
|
|
const promises = [];
|
|
for (let i = 0; i < 100; i++) {
|
|
promises.push(testHttp(child, i));
|
|
}
|
|
const result = await Promise.all(promises);
|
|
assert(!result.some((a) => !a), 'Some attempts failed');
|
|
return child.kill();
|
|
}
|
|
|
|
runTest();
|