hook-writable-stream
v0.1.0
Published
Hooking into Node.js writable stream
Downloads
23
Maintainers
Readme
Hooking into Node.js writable stream
Based on this gist. Useful when you need to test Node writable streams such as stdout.
Install
$ npm install --save-dev hook-writable-stream
Usage
Use a callback
var hookWritableStream = require('hook-writable-stream');
var hook = hookWritableStream(process.stdout, false, function(string) {
//=> string === 'hooked!\n'
});
console.log('hooked!');
hook.unhook();
console.log('unhooked!');
//=> 'unhooked!' is shown on your console
Use as a stream
var hookWritableStream = require('hook-writable-stream');
var through = require('through2');
var hook = hookWritableStream(process.stdout, false);
var stream = hook.stream;
stream.pipe(through(function(chunk, enc, cb) {
//=> chunk.toString() === 'hooked!\n'
cb(chunk);
}));
console.log('hooked!');
hook.unhook();
console.log('unhooked!');
//=> 'unhooked!' is shown on your console
API
hookWritableStream(writableStream, [keepOriginal], [callback])
Returns an object.
unhook
Type: function
Call to unhook the writable stream.
stream
A stream that you can consume. The data that was going to written to the original stream is written to this stream.
writableStream
A node writable stream such as process.stdout
.
keepOriginal
true
to keep writing to the original stream.
callback(obj)
obj
Whatever is written to the original stream.
License
MIT © Steve Mao