![](/img/trans.png)
[英]Mocking a Node Module which uses chained function calls with Jest in Node
[英]Jest - mocking a function that uses callbacks
我无法嘲笑上班。 如果我提供的只是一个方法调用的模拟实现,那么它将起作用。 但是,如果我将其替换为模拟回调实现,它将停止工作。 我究竟做错了什么?
// Module.js
export default class Module {
static navigate(payload, callback) { ... }
}
// setupJest.js
jest.mock('../src/Module', () => ({
navigate: jest.fn(console.log('test')) // works great
navigate: jest.fn((payload, callback) => { callback() } ) // does NOT work
}));
console.log('test')
起作用的唯一原因是因为它在您定义模拟时执行,而不是在调用navigate()
时执行。
只要你确信你的代码调用navigate()
这我不知道它是什么),那么你并不真的需要jest.fn()
jest.mock('../src/Module', () => ({
navigate(payload, callback){
console.log('is this really running?')
callback();
})
}));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.