1

我正在寻找jasmine.createSpy().and.callFake(fn)在 sinonjs 中的等价物。

例如:

const mySpy = jasmine.createSpy('my spy')
.and
.callFake((options) => Object.assign({}, {name: 'foo'}, options));
4

3 回答 3

2

可以修改(可选包装函数的)返回值的间谍在 Sinon 用语中称为stub,因此您要查找的是有关 stubs 的文档。您的示例如下所示:

const myStub = sinon.stub().callsFake((options) => Object.assign({}, {name: 'foo'}, options));

console.log(myStub().name === 'foo') // => 'true'

披露:我是 Sinon 维护团队的一员。

于 2017-06-11T07:48:21.167 回答
0

这应该有效:

var stub = sinon.stub(object, "method", func);

看看这个: http: //legacy.sinonjs.org/docs/

于 2017-06-06T17:29:42.447 回答
0

根据我从 Jasmine 文档中了解到的情况,这应该做类似的事情:

const mySpy = sinon.spy((options) => Object.assign({}, {name: 'foo'}, options))
于 2017-06-06T09:05:04.820 回答