I'm trying to write a unit test using chai js assertion, and was wondering how to expect arrays with zero length as values.
My Test function expect statement:
return expect(functionRetuningPromise()).to eventually.have.property("key1", []);
Console Output on running mocha:
AssertionError: expected { otherkey: otherVal, key1: [] } to have a property 'key1' of [], but got []
I have tried deep.property
, key1:"[]"
with no success
I ignored there's a section of change in assertion for properties. So, what made it work for me was :
return expect(functionRetuningPromise()).to.eventually.have.property("key1").that.eql([]);
What about
return
expect(functionRetuningPromise()).to.eventually.have.property("key1").that.satisfy(function (value) {
expect(value).to.be.instanceof(Array);
expect(value).to.have.length.above(0);
return true;
})
来源:https://stackoverflow.com/questions/35997234/chai-js-expect-property-value-empty-array