mock-stdio
v1.0.3
Published
mock stdio output for tests
Downloads
726
Maintainers
Readme
mock-stdio
This is just a simple module allowing you to easily test (or just ignore) code that needs to console.log
or otherwise write to standard out and standard error.
Install
npm install --save-dev mock-stdio
Example
var mockIo = require('mock-stdio');
var expect = require('chai').expect;
describe('thing', function () {
it('writes to standard out', function () {
// Start the mock... it will not be possible to write to
// the real stdout and stderr when this is active.
mockIo.start();
// Call your code.
someFunction();
// When you are done, end the mock, and it will return
// all the data written to stdout and stderr while the mock
// was active.
var result = mockIo.end();
// Make sure that what you expected was written to
// the corresponding output.
expect(result.stdout).to.be.a('string');
expect(result.stderr).to.be.a('string');
});
});
Note that it is best to use the mock directly inside the test, rather than in before
or after
functions, as it will not be possible for anything within the node process to log to stdout
and stderr
, meaning you may lose messages that are printed by your test framework.