【发布时间】:2013-12-16 17:00:22
【问题描述】:
假设我们有一个对象
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 计算属性的正确方法是什么?
【问题讨论】:
-
我认为您在使用
var myObject = Ember.Object.create(...is not possible to create an object with computed properties时收到错误。 -
@MárcioRodriguesCorreaJúnior 不,我们没有收到错误消息,您使用的是哪个版本的 ember?不过现在我使用的是 0.9.8
-
最新的 1.2.0,我用 1.0.pre 测试过,没有报错,所以忘记我的最后评论:)
标签: ember.js mocha.js karma-runner sinon chai