【发布时间】:2023-03-05 09:17:01
【问题描述】:
我有一个对象MyObject:
class MyObject
def initialize(options = {})
@stat_to_load = options[:stat_to_load] || 'test'
end
def results
[]
end
end
我只想在stat_to_load = "times" 时存根results 方法。我怎样才能做到这一点?我试过了:
MyObject.any_instance.stubs(:initialize).with({
:stat_to_load => "times"
}).stubs(:results).returns(["klala"])
但它不起作用。有什么想法吗?
【问题讨论】:
-
我可以看到问题中
result与results不匹配。可能不是您的答案,但值得修复吗? -
Oups,复制/粘贴错误
-
我什至不知道这是否可能,但可能正确的解决方案是注入对象或类,然后你对它有更多的控制权。很难说/给出例子而不看这段代码是如何使用的。
-
如果你有我的类 MyObject.我想为 Rails 测试存根。
标签: ruby-on-rails ruby testing stub ruby-mocha