node/test/parallel/test-http2-server-session-destroy.js
leeight 895fe2f574 http2: fix session[kSession] undefined issue
`finishSessionDestroy` session cleanup when already done.

PR-URL: https://github.com/nodejs/node/pull/24547
Fixes: https://github.com/nodejs/node/issues/24546
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ouyang Yadong <oyydoibh@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-11-24 18:19:11 -08:00

21 lines
562 B
JavaScript

'use strict';
const common = require('../common');
if (!common.hasCrypto)
common.skip('missing crypto');
const h2 = require('http2');
const server = h2.createServer();
server.listen(0, common.localhostIPv4, common.mustCall(() => {
const afterConnect = common.mustCall((session) => {
session.request({ ':method': 'POST' }).end(common.mustCall(() => {
session.destroy();
server.close();
}));
});
const port = server.address().port;
const host = common.localhostIPv4;
h2.connect('http://' + host + ':' + port, afterConnect);
}));