diff --git a/lib/internal/http2/core.js b/lib/internal/http2/core.js index 6a701179cee0da..c3681383f87e80 100755 --- a/lib/internal/http2/core.js +++ b/lib/internal/http2/core.js @@ -1315,7 +1315,7 @@ class Http2Stream extends Duplex { id: this[kID], state: this.state, readableState: this._readableState, - writeableSate: this._writableState + writableState: this._writableState }; return `Http2Stream ${util.format(obj)}`; } diff --git a/test/parallel/test-http2-stream-client.js b/test/parallel/test-http2-stream-client.js new file mode 100644 index 00000000000000..658c66ce7af895 --- /dev/null +++ b/test/parallel/test-http2-stream-client.js @@ -0,0 +1,29 @@ +// Flags: --expose-http2 +'use strict'; + +const common = require('../common'); +if (!common.hasCrypto) + common.skip('missing crypto'); +const assert = require('assert'); +const http2 = require('http2'); +const util = require('util'); + +const server = http2.createServer(); +server.on('stream', common.mustCall((stream) => { + assert.strictEqual(stream.aborted, false); + const insp = util.inspect(stream); + assert.ok(/Http2Stream { id/.test(insp)); + assert.ok(/ state:/.test(insp)); + assert.ok(/ readableState:/.test(insp)); + assert.ok(/ writableState:/.test(insp)); + stream.end('ok'); +})); +server.listen(0, common.mustCall(() => { + const client = http2.connect(`http://localhost:${server.address().port}`); + const req = client.request(); + req.resume(); + req.on('streamClosed', common.mustCall(() => { + client.destroy(); + server.close(); + })); +}));