nodejs-mozilla/test/parallel/test-domain-multiple-errors.js

27 lines
585 B
JavaScript

'use strict';
const common = require('../common');
const assert = require('assert');
const domain = require('domain');
// This test is similar to test-domain-error-types, but uses a single domain
// to emit all errors.
const d = new domain.Domain();
const values = [
42, null, undefined, false, () => {}, 'string', Symbol('foo')
];
d.on('error', common.mustCall((err) => {
assert(values.includes(err));
}, values.length));
for (const something of values) {
d.run(common.mustCall(() => {
process.nextTick(common.mustCall(() => {
throw something;
}));
}));
}