test: expand http2 frameError test case
Expand maxSendHeaderBlockLength test to check what happens if frameError listener isn't available. PR-URL: https://github.com/nodejs/node/pull/15298 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Refael Ackermann <refack@gmail.com>
This commit is contained in:
parent
8589c70c85
commit
15879adf1d
@ -16,7 +16,7 @@ server.listen(0);
|
|||||||
server.on('listening', common.mustCall(() => {
|
server.on('listening', common.mustCall(() => {
|
||||||
|
|
||||||
// Setting the maxSendHeaderBlockLength, then attempting to send a
|
// Setting the maxSendHeaderBlockLength, then attempting to send a
|
||||||
// headers block that is too big should cause a 'meError' to
|
// headers block that is too big should cause a 'frameError' to
|
||||||
// be emitted, and will cause the stream to be shutdown.
|
// be emitted, and will cause the stream to be shutdown.
|
||||||
const options = {
|
const options = {
|
||||||
maxSendHeaderBlockLength: 10
|
maxSendHeaderBlockLength: 10
|
||||||
@ -31,7 +31,6 @@ server.on('listening', common.mustCall(() => {
|
|||||||
|
|
||||||
req.resume();
|
req.resume();
|
||||||
req.on('end', common.mustCall(() => {
|
req.on('end', common.mustCall(() => {
|
||||||
server.close();
|
|
||||||
client.destroy();
|
client.destroy();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
@ -39,12 +38,38 @@ server.on('listening', common.mustCall(() => {
|
|||||||
assert.strictEqual(code, h2.constants.NGHTTP2_ERR_FRAME_SIZE_ERROR);
|
assert.strictEqual(code, h2.constants.NGHTTP2_ERR_FRAME_SIZE_ERROR);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
req.on('error', common.mustCall(common.expectsError({
|
req.on('error', common.expectsError({
|
||||||
code: 'ERR_HTTP2_STREAM_ERROR',
|
code: 'ERR_HTTP2_STREAM_ERROR',
|
||||||
type: Error,
|
type: Error,
|
||||||
message: 'Stream closed with error code 7'
|
message: 'Stream closed with error code 7'
|
||||||
})));
|
}));
|
||||||
|
|
||||||
req.end();
|
req.end();
|
||||||
|
|
||||||
|
// if no frameError listener, should emit 'error' with
|
||||||
|
// code ERR_HTTP2_FRAME_ERROR
|
||||||
|
const req2 = client.request({ ':path': '/' });
|
||||||
|
|
||||||
|
req2.on('response', common.mustNotCall());
|
||||||
|
|
||||||
|
req2.resume();
|
||||||
|
req2.on('end', common.mustCall(() => {
|
||||||
|
server.close();
|
||||||
|
client.destroy();
|
||||||
|
}));
|
||||||
|
|
||||||
|
req2.once('error', common.mustCall((err) => {
|
||||||
|
common.expectsError({
|
||||||
|
code: 'ERR_HTTP2_FRAME_ERROR',
|
||||||
|
type: Error
|
||||||
|
})(err);
|
||||||
|
req2.on('error', common.expectsError({
|
||||||
|
code: 'ERR_HTTP2_STREAM_ERROR',
|
||||||
|
type: Error,
|
||||||
|
message: 'Stream closed with error code 7'
|
||||||
|
}));
|
||||||
|
}));
|
||||||
|
|
||||||
|
req2.end();
|
||||||
|
|
||||||
}));
|
}));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user