2

我在我的一个测试的设置中存根这样的方法

  def setup
    super
    #blah, blah
    GoogleIdentity.stubs(:new).with(google_identity).returns(google_account)
  end

问题是不是每个测试都会调用方法并返回对象。

在不调用该方法的方法中,我收到此错误:

允许任意次数,尚未调用:GoogleIdentity.new()

似乎 mocha 正在抱怨,因为没有调用该方法。

如何指定一个不希望它被调用的存根?

4

1 回答 1

3

我认为 mocha 的实现被破坏了。被调用的方法stubs不应该关心是否被调用。那应该是mocks方法的责任。

这种行为是我不再使用 mocha 的原因之一。

根据我在解决此问题时的记忆,我使用了一种期望来处理这种情况,例如at_most(1).

于 2013-10-29T19:52:32.687 回答