node/test/parallel/test-http2-client-http1-server.js
Ruben Bridgewater 1ed3c54ecb
errors: update error name
This updates all Node.js errors by removing the `code` being part
of the `name` property. Instead, the name is just changed once on
instantiation, the stack is accessed to create the stack as expected
and then the `name` property is set back to it's original form.

PR-URL: https://github.com/nodejs/node/pull/26738
Fixes: https://github.com/nodejs/node/issues/26669
Fixes: https://github.com/nodejs/node/issues/20253
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2019-03-23 02:55:54 +01:00

36 lines
888 B
JavaScript

'use strict';
// Flags: --expose-internals
const common = require('../common');
if (!common.hasCrypto)
common.skip('missing crypto');
const http = require('http');
const http2 = require('http2');
const { NghttpError } = require('internal/http2/util');
// Creating an http1 server here...
const server = http.createServer(common.mustNotCall());
server.listen(0, common.mustCall(() => {
const client = http2.connect(`http://localhost:${server.address().port}`);
const req = client.request();
req.on('close', common.mustCall());
req.on('error', common.expectsError({
code: 'ERR_HTTP2_ERROR',
type: NghttpError,
message: 'Protocol error'
}));
client.on('error', common.expectsError({
code: 'ERR_HTTP2_ERROR',
type: NghttpError,
name: 'Error',
message: 'Protocol error'
}));
client.on('close', common.mustCall(() => server.close()));
}));