Skip to content

Commit 3326255

Browse files
committed
stream: Duplex forward writableObjectMode
Duplex did not properly forward writableObjectMode. Fixes: #33388
1 parent b04e884 commit 3326255

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

lib/_stream_duplex.js

+2
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ ObjectDefineProperties(Duplex.prototype, {
7575
ObjectGetOwnPropertyDescriptor(Writable.prototype, 'writable'),
7676
writableHighWaterMark:
7777
ObjectGetOwnPropertyDescriptor(Writable.prototype, 'writableHighWaterMark'),
78+
writableObjectMode:
79+
ObjectGetOwnPropertyDescriptor(Writable.prototype, 'writableObjectMode'),
7880
writableBuffer:
7981
ObjectGetOwnPropertyDescriptor(Writable.prototype, 'writableBuffer'),
8082
writableLength:
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
'use strict';
2+
3+
require('../common');
4+
const assert = require('assert');
5+
const { Duplex } = require('stream');
6+
7+
{
8+
const d = new Duplex({
9+
objectMode: true,
10+
highWaterMark: 100
11+
});
12+
13+
assert.strictEqual(d.writableObjectMode, true);
14+
assert.strictEqual(d.writableHighWaterMark, 100);
15+
}
16+
17+
{
18+
const d = new Duplex({
19+
readableObjectMode: false,
20+
readableHighWaterMark: 10,
21+
writableObjectMode: true,
22+
writableHighWaterMark: 100
23+
});
24+
25+
assert.strictEqual(d.writableObjectMode, true);
26+
assert.strictEqual(d.writableHighWaterMark, 100);
27+
assert.strictEqual(d.readableObjectMode, false);
28+
assert.strictEqual(d.readableHighWaterMark, 10);
29+
}

0 commit comments

Comments
 (0)