stu
Version:
Stub dependencies when testing
24 lines • 1.05 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const sinon_1 = __importDefault(require("sinon"));
const mockObject_1 = __importDefault(require("./mockObject"));
const getFunctionKeys_1 = __importDefault(require("./getFunctionKeys"));
const getObjectKeys_1 = __importDefault(require("./getObjectKeys"));
const mockFunction = (fn, cache) => {
const mock = Object.assign(sinon_1.default.stub(), mockObject_1.default(fn, getFunctionKeys_1.default(fn), cache));
if (fn.hasOwnProperty('prototype')) {
const keys = getObjectKeys_1.default(fn.prototype);
for (let i = 0, len = keys.length; i < len; i++) {
let key = keys[i];
if (key !== 'constructor') {
mock.prototype[key] = sinon_1.default.stub();
}
}
}
return mock;
};
exports.default = mockFunction;
//# sourceMappingURL=mockFunction.js.map