开玩笑地嘲笑嵌套函数

时间:2018-07-09 14:05:50

标签: javascript node.js express jestjs

我想开玩笑地测试一下calculate(),并且我不想调用add()和subtract()的实际实现。如何模拟这些实现?这只是一个示例代码,我不确定它是否可以正常运行,但是我想问的是,在测试calculate()时如何模拟嵌套函数add()和subtract(),以便在测试calculate()时不要调用加法和减法的实际实现?

calculator.js

function add(){
    return 1+1;
}

function subtract(){
    return 2-1;
}

function calculate(){
    add();
    subtract();
}

module.exports = { add, subtract, calculate}

编辑:是,所有这些功能都在同一模块中。

calculator-test.js

describe('calculator.js', () => {
    it('Testing calculate() without calling add and subtract ', () => {
    const helper = require('calculator');

    helper.add = jest.fn();
    helper.subtract = jest.fn();

    helper.calculate();

    // I don't know....How do I test calculate() ??
})

EDIT2:这不是已被标记的重复问题。我已经说过我在同一个模块中遇到功能问题,而不是在不同模块中遇到问题,您将其标记为重复。

0 个答案:

没有答案