用Jest模拟模块变量

时间:2018-10-12 14:30:05

标签: javascript node.js jestjs

我一直在使用Jest来模拟一些变量,这些变量用于测试功能中,例如:

global.SERVER_URL = 'test';
await hydrateApp();
expect(ReactDOM.hydrate).toBeCalled();

此处,SERVER_URL使用hydrateApp()的新设置值。但是,我无法使用module执行此操作。当我尝试设置module.hot时,调用该函数时它将仍然是未定义的:

global.module.hot = {
  accept: jest.fn()
};
await hydrateApp();
expect(global.module.hot.accept).toBeCalled();

在这种情况下,module.hothydrateApp()内部未定义。

如何在要测试的函数使用的模块对象上设置变量?

0 个答案:

没有答案