如何将函数与 chai.should 匹配
How to match a function with chai.should
假设一个函数应该return以下
{ key: 'bar',
cb: () => {},
...
}
现在的问题是如何在单元测试中验证这一点。例如,如果我这样做
getFunc().should.eql({key: 'bar', cb: () => {}, ...});
它总是失败,因为 cb
值是一个不同的函数
Chai.should
是否等同于 jasmine.any(Function)
?或者如何用 chai.should 完成?
我在 chai 文档中搜索了一下,instanceOf
似乎是 jasmine.any(Function)
.
等价物的最佳候选者
var result = getFunc();
result.cb.should.be.instanceOf(Function);
result.should.contain.all.keys(['key']);
假设一个函数应该return以下
{ key: 'bar',
cb: () => {},
...
}
现在的问题是如何在单元测试中验证这一点。例如,如果我这样做
getFunc().should.eql({key: 'bar', cb: () => {}, ...});
它总是失败,因为 cb
值是一个不同的函数
Chai.should
是否等同于 jasmine.any(Function)
?或者如何用 chai.should 完成?
我在 chai 文档中搜索了一下,instanceOf
似乎是 jasmine.any(Function)
.
var result = getFunc();
result.cb.should.be.instanceOf(Function);
result.should.contain.all.keys(['key']);