【发布时间】:2013-03-28 22:44:59
【问题描述】:
在开发一个回调驱动的 API 时,我想将某个函数表达为使用一组特定的参数和“任何”函数(回调)来调用。
Jasmine 可以做到以下几点:
var serviceFunction = jasmine.createSpy();
var functionUnderTest = create(serviceFunction);
var thing = 'arbitrary/thing'
functionUnderTest(thing);
expect(serviceFunction).toHaveBeenCalledWith(thing, jasmine.any(Function));
有 sinon/buster.js 类似的能力吗?到目前为止,我只测试了第一个参数,但我真的很想表达在测试中需要回调。
这是我目前所拥有的:
var serviceFunction = this.spy(); // or `sinon.spy()`
var functionUnderTest = create(serviceFunction);
var thing = 'arbitrary/thing'
functionUnderTest(thing);
assert.calledWith(serviceFunction, thing);
【问题讨论】:
标签: javascript sinon buster.js