改变mocha默认只需要一次

时间:2009-07-24 16:01:25

标签: ruby-on-rails mocha

我刚刚开始使用mocha,我发现在创建一个新的模拟对象时,mocha希望它只被调用一次就很烦人了。我有帮助方法来生成我的模拟,我正在做这样的事情

my_mock = mock(HashOfParameters)

可能不会为每个测试方法调用所有参数,因此会引发错误:

  

预计恰好一次,尚未调用

所以我想我需要做这样的事情:

my_mock = mock()
HashOfParameters.each do |k, v|
  my_mock.expects(k).returns(v).at_least(0)
end

这有效,但我想知道是否有更简单的方法来做到这一点,比如在某处更改默认配置......

1 个答案:

答案 0 :(得分:3)

好的,这是一个愚蠢的问题......我没有花时间真正理解模拟和存根之间的区别。这是一篇很好的文章,展示了它的工作原理:

http://martinfowler.com/articles/mocksArentStubs.html

所以在我的例子中,我应该使用stub方法而不是mock。