proxyquire-2
Version:
Proxies import/require in order to allow overriding dependencies during testing.
41 lines (31 loc) • 1.07 kB
JavaScript
/*jshint asi:true*/
/*global describe, before, beforeEach, it */
;
var assert = require('assert')
, realFoo = require('./samples/foo');
var stubs = {
path:{
extname:function () {},
basename:function () {}
}
};
describe('api', function () {
describe('default export', function () {
var proxyquire = require('..')
it('proxyquire can load', function () {
var proxiedFoo = proxyquire.load('./samples/foo', stubs);
assert.equal(typeof proxiedFoo, 'object');
assert.notStrictEqual(realFoo, proxiedFoo);
});
it('proxyquire can callThru and then load', function () {
var proxiedFoo = proxyquire.callThru().load('./samples/foo', stubs);
assert.equal(typeof proxiedFoo, 'object');
assert.notStrictEqual(realFoo, proxiedFoo);
});
it('proxyquire can noCallThru and then load', function () {
var proxiedFoo = proxyquire.noCallThru().load('./samples/foo', stubs);
assert.equal(typeof proxiedFoo, 'object');
assert.notStrictEqual(realFoo, proxiedFoo);
});
});
});