test: add useful info to error msg and refactor

Add useful info about process.domain to error meesages in the
uncaughtException event listener and the beforeExit event listener.

Refactor code such as using template literals, and also make sure
uncaughtException listner is detached after firing once to avoid
endless loop in case of exception throw in the beforeExit event
listner.

PR-URL: https://github.com/nodejs/node/pull/18541
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
Chin Huang
2018-02-02 15:03:07 -08:00
committed by Myles Borins
parent a26454ea32
commit 6bc307ff32

View File

@@ -6,15 +6,18 @@ const assert = require('assert');
const d = domain.create();
process.on('uncaughtException', common.mustCall(function onUncaught() {
process.once('uncaughtException', common.mustCall(function onUncaught() {
assert.strictEqual(
process.domain, null,
'domains stack should be empty in uncaughtException handler');
'Domains stack should be empty in uncaughtException handler ' +
`but the value of process.domain is ${JSON.stringify(process.domain)}`);
}));
process.on('beforeExit', common.mustCall(function onBeforeExit() {
assert.strictEqual(process.domain, null,
'domains stack should be empty in beforeExit handler');
assert.strictEqual(
process.domain, null,
'Domains stack should be empty in beforeExit handler ' +
`but the value of process.domain is ${JSON.stringify(process.domain)}`);
}));
d.run(function() {