muk

Mock object methods and dependencies.

muk

Usage

Mock dependencies.

foo.js

var request = require('request');
 
module.exports = function foo(url) {
  // do something with request
};

test.js

var mockedRequest = function(urloptionscallback) {
  // mock a request here 
};
 
var foo = muk('./foo', {
  request: mockedRequest
});

You can also mock modules required with a relative path.

some/where/else/foo.js

var bar = require('./bar');
 
module.exports = function() {
  // do something with bar 
};

some/where/else/bar.js

exports.attack = 'sludge attack!';

test.js

var foo = muk('./some/where/else/foo', { './bar': 'hey!!' });

Comes with object method mocking too.

var fs = require('fs');
var muk = require('muk');
 
muk(fs, 'readFile', function(pathcallback) {
  process.nextTick(callback.bind(null, null, 'file contents here'));
});

Restore all mocked methods after tests.

muk.restore();
 
fs.readFile(file, function(err, data) {
  // will actually read from `file`
});

Install

npm install muk

Tests

Tests are written with mocha

npm test

License

MIT