summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlib/internal/http2/core.js2
-rw-r--r--test/parallel/test-http2-stream-client.js29
2 files changed, 30 insertions, 1 deletions
diff --git a/lib/internal/http2/core.js b/lib/internal/http2/core.js
index 6a701179ce..c3681383f8 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 0000000000..658c66ce7a
--- /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();
+ }));
+}));