我使用 karma、jasmine 编写 Angular 单元测试。尝试写:
expect(item).toEqual(jasmine.any(Boolean));
但得到:
Expected true to equal <jasmine.any(function Boolean() { [native code] })>.
嗯..也许我做错了什么)或者是在这种情况下编写值(value)测试的另一种方法:
如果(真或假)- 通过,如果有其他 - 失败
最佳答案
我认为你需要的是一个像这样的自定义匹配器:
toBeBoolean : function () {
return {
compare : function (actual, expected) {
return {
pass : (typeof actual === 'boolean'),
message : 'Expected ' + actual + ' is not boolean'
};
}
};
}
关于angularjs - Jasmine - 任何 bool 值 (jasmine.any(Boolean)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21236794/