rspec 中的存根 .push 方法

问题描述

我有一些使用 .push代码。 我想编写一个单元测试来测试这段代码的失败场景,但我无法弄清楚语法。

我的代码是这样的

   if object.groups.push(group)
    flash[:notice] = I18n.t(".success")
  else
    flash[:alert] = I18n.t(".failure")
  end

我已尝试删除 .push 方法,因此它返回 false,但它仍然返回 true。

我的存根尝试如下:

      object.groups.should_receive(:push).with(group).and_return(false)
  allow(object.groups).to receive(:push).with(group).and_call_original

我是不是用错了方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)