nodejs/test/parallel/test-http-client-req-error-...

28 lines
678 B
JavaScript

'use strict';
// This tests that the error emitted on the socket does
// not get fired again when the 'error' event handler throws
// an error.
const common = require('../common');
const { addresses } = require('../common/internet');
const { errorLookupMock } = require('../common/dns');
const assert = require('assert');
const http = require('http');
const host = addresses.INVALID_HOST;
const req = http.get({
host,
lookup: common.mustCall(errorLookupMock())
});
const err = new Error('mock unexpected code error');
req.on('error', common.mustCall(() => {
throw err;
}));
process.on('uncaughtException', common.mustCall((e) => {
assert.strictEqual(e, err);
}));