summaryrefslogtreecommitdiff
path: root/test/parallel/test-stream-writable-constructor-set-methods.js
blob: a12112d1ecc26650d7bcb8ef36aa8d6f3402fc33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
'use strict';
require('../common');
const assert = require('assert');

const Writable = require('stream').Writable;

let _writeCalled = false;
function _write(d, e, n) {
  _writeCalled = true;
}

const w = new Writable({ write: _write });
w.end(Buffer.from('blerg'));

let _writevCalled = false;
let dLength = 0;
function _writev(d, n) {
  dLength = d.length;
  _writevCalled = true;
}

const w2 = new Writable({ writev: _writev });
w2.cork();

w2.write(Buffer.from('blerg'));
w2.write(Buffer.from('blerg'));
w2.end();

process.on('exit', function() {
  assert.strictEqual(w._write, _write);
  assert(_writeCalled);
  assert.strictEqual(w2._writev, _writev);
  assert.strictEqual(dLength, 2);
  assert(_writevCalled);
});