GeezerVison is showing github.com — http2: expose writable stream state on compat response · nodejs/node@01eed59
File tree
Expand file treeCollapse file tree
Open diff view settings
Expand file treeCollapse file tree
Open diff view settings
Collapse file
Copy file name to clipboardExpand all lines: lib/internal/http2/compat.js +8Lines changed: 8 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -551,6 +551,10 @@ class Http2ServerResponse extends Stream { |
551 | 551 | return this[kStream].writableHighWaterMark; |
552 | 552 | } |
553 | 553 |
|
| 554 | + get writableObjectMode() { |
| 555 | + return this[kStream].writableObjectMode; |
| 556 | + } |
| 557 | + |
554 | 558 | get writableFinished() { |
555 | 559 | return this[kStream].writableFinished; |
556 | 560 | } |
@@ -559,6 +563,10 @@ class Http2ServerResponse extends Stream { |
559 | 563 | return this[kStream].writableLength; |
560 | 564 | } |
561 | 565 |
|
| 566 | + get writableNeedDrain() { |
| 567 | + return this[kStream].writableNeedDrain; |
| 568 | + } |
| 569 | + |
562 | 570 | set statusCode(code) { |
563 | 571 | code |= 0; |
564 | 572 | if (code >= 100 && code < 200) |
|
Collapse file
Copy file name to clipboardExpand all lines: test/parallel/test-http2-res-writable-properties.js +3Lines changed: 3 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -7,11 +7,14 @@ const http2 = require('http2'); |
7 | 7 | const server = http2.createServer(common.mustCall((req, res) => { |
8 | 8 | const hwm = req.socket.writableHighWaterMark; |
9 | 9 | assert.strictEqual(res.writableHighWaterMark, hwm); |
| 10 | + assert.strictEqual(res.writableObjectMode, res.stream.writableObjectMode); |
| 11 | + assert.strictEqual(res.writableNeedDrain, res.stream.writableNeedDrain); |
10 | 12 | assert.strictEqual(res.writableLength, 0); |
11 | 13 | res.write(''); |
12 | 14 | const len = res.writableLength; |
13 | 15 | res.write('asd'); |
14 | 16 | assert.strictEqual(res.writableLength, len + 3); |
| 17 | + assert.strictEqual(res.writableNeedDrain, res.stream.writableNeedDrain); |
15 | 18 | res.end(); |
16 | 19 | res.on('finish', common.mustCall(() => { |
17 | 20 | assert.strictEqual(res.writableLength, 0); |
|