Jest - 如何在同一个文件中模拟ES6模块的功能?

时间:2018-05-11 20:48:33

标签: unit-testing testing jest

我正在使用Jest,但我遇到了以下问题:

我在getStyle文件中有一个名为helpers.js的方法。方法在内部调用另一个名为getTransition的方法并返回一个对象。

为了正确测试方法,我必须断言返回的对象符合我的测试标准,并且getTransition被正确调用。

如何在getTransition中模仿jest.fn()来检查mock.calls

let myMock = jest.fn();
jest.mock("../src/helpers.js", () => {
    getTransition: myMock
});

it("gets style", () => {
    let style = getStyle(object, 100);

    expect(style.height).toBe("100px");
    expect(style.transition).not.toBeUndefined();
    expect(style.transition).not.toBeNull();
    expect(myMock.mock.calls.length).toBe(1);
});

但是mymock.mock.calls是空的。如何在我导入我需要测试的方法的同一模块中模拟方法?

0 个答案:

没有答案