当我期望用笑话调用该函数时,如何防止执行该函数?

问题描述

export function abc(){
         a();
}
export function a(){
     b();
}
export function b(){
 //do some tasks
}
import * as p from './filename'
it('a should call b',()=>{
 spyOn(p,'b');
 p.a();
 expect(p.b).toHaveBeenCalled();
);

当我尝试执行此测试用例时,它也会尝试执行b函数并失败。我只希望它应该调用b函数。我该如何实现?

解决方法

尝试添加模拟实现

///我在模拟b函数并以b()的o / p返回o

const spyB = jest.spyOn(p,'b').mockImplementation(0 as any);  
p.a();
expect(spyB).toHaveBeenCalled();  
spyB.mockClear();

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...