笑话genMockFromModule命名为exports

时间:2019-06-03 06:40:38

标签: javascript jestjs

根据开玩笑的文档,最好使用genMockFromModule,然后根据需要模拟特定的方法:https://jestjs.io/docs/en/jest-object#jestgenmockfrommodulemodulename

这适用于默认导出,但是如何将其与命名导出一起使用?

我尝试这样做:

const matches = jest.genMockFromModule("../matches");

matches.index = jest.fn();

export {
  ...matches
}

但是在导出方法时,您不能使用扩展运算符。

这样做:

const matches = jest.genMockFromModule("../matches");

matches.index = jest.fn();

export matches

也不起作用,因为它需要声明…

我想念什么吗?

编辑:添加matchs.js示例代码

matches.js(我要模拟的文件)中的代码示例:

import { dwf_api_endpoint } from "../config/api";
import Client from "./Client";

export const index = (): Promise<Object> =>
  Client.get(`${dwf_api_endpoint}/matches`);

export const show = (id: number, ws: boolean): Promise<Object> =>
  Client.get(`${dwf_api_endpoint}/matches/${id}${ws ? "?ws=1" : ""}`);

1 个答案:

答案 0 :(得分:0)

原来我只需要使用module.exports

const matches = jest.genMockFromModule("../matches.js");

matches.index = jest.fn();

module.exports = matches;