我有以下代码
class SomeClass
def initialize(opts)
if opts[:should_load]
load
else
setup(opts[:path])
end
end
def load; end
def setup; end
end
我想测试是否正在调用适当的方法,但我无法弄清楚如何使用RSpec执行此操作。有什么提示吗?
答案 0 :(得分:2)
使用Object#any_instance
(rspec> = 2.6.0)进行游戏:
SomeClass.any_instance.should_receive(:load)
SomeClass.new(:should_load => true)
SomeClass.any_instance.should_receive(:setup).with("mypath")
SomeClass.new(:path => "mypath")