说我们有一个对象
var myObject = Ember.Object.create({
enable: function(){
//a method which has a lot of calculations and returns a boolean
}.property("someDependency"),
disable: Ember.computed.not("enable")
})
我分别测试了属性enable
,现在我想分别测试属性disable
&我只想存根enable
,以便我的测试用例很简单。
我试过
myObject.set("enable", true)
但这不对,因为我们需要定义一个setter(并非所有计算属性的情况)
sinon.stub(myObject, "enable")
也失败,因为Ember.computed
返回object
但是sinon需要一个方法作为第二个参数
那么,问题是在ember 0.9.8中stub
计算属性的正确方法是什么?
答案 0 :(得分:3)
我想出了一种方法来做到这一点(尽管不是完全顽固),只是想知道每个人对此的看法
beforeEach(function(){
object.reopen({enable: true});
})
it('should be false when enable is true', function(){
expect(object.get("disable")).to.be.false;
})