我正在使用Angular2/TypeScript项目并使用jasmine进行单元测试。你如何测试一个函数,使用jasmine + TypeScript调用常量
如何测试一个使用茉莉花常量调用的函数。例如, Logo.ts
export const RADIUS: number = 10;
export class Logo {
...
protected drawCircle(x: number, y: number, r: number){...}
protected drawLogo(){
this.drawCircle(RADIUS, RADIUS, RADIUS);
}
...
}
Logo.spec.ts
describe('drawLogo', function() {
beforeEach(() => {
spyOn(logo, 'drawCircle');
}
it('should call drawCircle method with parameters'){
expect(logo.drawCircle).toHaveBeenCalledWith(10, 10, 10); //This fails
}
}
是否有任何其他方式比传递常量作为参数传递给toHaveBeenCalledWith方法来测试其他?
你可以用'logo.drawCircle.calls.mostRecent()。args'为更灵活一点。 – Ioan
你永远不会在你的测试中调用drawLogo()。那该如何工作? – iberbeu