chai-stream
v0.0.0
Published
Extends Chai with assertions about streams.
Downloads
422
Maintainers
Readme
chai-stream
Extends Chai with assertions about streams.
Install
Node.js
npm install --save-dev chai-stream
AMD
define(function(require, exports, module) {
var chai = require('chai');
var chaiStream = require('chai-stream');
chai.use(chaiStream);
});
script tag
<script src="chai.js"></script>
<script src="chai-stream.js"></script>
Usage
BDD-Style
var chai = require('chai');
var chaiStream = require('chai-stream');
chai.use(chaiStream);
var expect = chai.expect;
describe('getMyStream', function() {
it('should return a readable stream', function() {
var stream = getMyStream();
expect(stream).to.be.a.ReadableStream;
});
it('should return a stream that will end', function() {
var stream = getMyStream();
return expect(stream).to.end;
});
});
expect(obj).to.be.a.Stream
Type: function(any)
This assertion check that the specified object have a pipe
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
expect(obj).to.be.a.ReadableStream
Type: function(any)
This assertion check that the specified object have a pipe
and resume
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
expect(obj).to.be.a.WritableStream
Type: function(any)
This assertion check that the specified object have a pipe
and write
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
expect(obj).to.end
Type: function(any): Promise<void>
Returns a promise that fulfilled when a end
event is fired.
And this function force the stream to read (like piping with WritableStream
).
obj
Type: any
waitUntilStreamEnd
listen end
or error
event of the stream.
TDD-Style
var chai = require('chai');
var chaiStream = require('chai-stream');
chai.use(chaiStream);
var assert = chai.assert;
describe('getMyStream', function() {
it('should return a readable stream', function() {
var stream = getMyStream();
assert.isReadableStream(stream);
});
it('should return a stream that will end', function() {
var stream = getMyStream();
return assert.streamWillEnd(stream);
});
});
assert.isStream(obj)
Type: function(any)
This assertion check that the specified object have a pipe
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
assert.isReadableStream(obj)
Type: function(any)
This assertion check that the specified object have a pipe
and resume
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
assert.isWritableStream(obj)
Type: function(any)
This assertion check that the specified object have a pipe
and write
method.
So, it pass streams that not inherit Node's Stream.
obj
Type: any
assert.streamWillEnd(obj)
Type: function(any): Promise<void>
Returns a promise that fulfilled when a end
event is fired.
And this function force the stream to read (like piping with WritableStream
).
obj
Type: any
waitUntilStreamEnd
listen end
or error
event of the stream.