0
0
mirror of https://github.com/nodejs/node.git synced 2024-11-25 08:19:38 +01:00
nodejs/test/parallel/test-stream-writable-constructor-set-methods.js
Sam Newman 50daee7243 stream: simpler stream constructon
Adds simplified constructor pattern, allowing users
to provide "read", "write", "transform", "flush", and
"writev" functions as stream options in lieu of subclassing.

Semver: minor
PR-URL: https://github.com/iojs/io.js/pull/697
Fixes: https://github.com/iojs/readable-stream/issues/102
Reviewed-By: Chris Dickinson <christopher.s.dickinson@gmail.com>
2015-02-04 20:19:39 -08:00

35 lines
693 B
JavaScript

var common = require('../common');
var assert = require('assert');
var Writable = require('stream').Writable;
var _writeCalled = false;
function _write(d, e, n) {
_writeCalled = true;
}
var w = new Writable({ write: _write });
w.end(new Buffer('blerg'));
var _writevCalled = false;
var dLength = 0;
function _writev(d, n) {
dLength = d.length;
_writevCalled = true;
}
var w2 = new Writable({ writev: _writev });
w2.cork();
w2.write(new Buffer('blerg'));
w2.write(new Buffer('blerg'));
w2.end();
process.on('exit', function () {
assert.equal(w._write, _write);
assert(_writeCalled);
assert.equal(w2._writev, _writev);
assert.equal(dLength, 2);
assert(_writevCalled);
});