Current Status: This library is ready for experimental usage.
Test one thing at a time, fake the rest.
Set an expectation of a method call on an object:
var fake = require('fake')();
var object = {};
fake.expect(object, 'method');
object.method();
If the last object.method()
call is not present, an exception will be thrown.
Depending on your approach to TDD, you may prefer to use stubbing over mocking instead:
var fake = require('fake')();
var object = {};
var objectMethodCall = fake.stub(object, 'method');
object.method();
assert.equals(objectMethodCall.calls.length, 1);
Set up an ordered expectation. Calling any other methods controlled by fake before this expectation has been satisfied will throw an exception.
Set up an unordered expectation. This will only throw an error if this expectation is not verified before the process exits.
Set up an optional expectation. This is useful for pre-filling return values for functions, without caring if the function is ever called.
Fake is released under the MIT license.