如何将函数与 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']);