gpt4 book ai didi

ruby-on-rails - 你如何 stub 特定模拟实例的所有方法

转载 作者:行者123 更新时间:2023-12-04 06:04:04 27 4
gpt4 key购买 nike

我有一个由第三方处理的特定模拟。我只想检查是否已返回相同的模拟。

但是,第三方调用我的测试并不真正关心的数组方法和保存方法。有没有办法告诉我的模拟它期望/ stub 与该特定模拟实例有关的所有方法?

例如。

user = mock(User)
user.stub_all

谢谢!

编辑

有关该问题的更多信息:

测试:
  it "creating an invitation should return invitation" do
invitation = mock_model(Invitation)
invitation.stub(:[]=)
invitation.stub(:save)
Invitation.stub(:create).and_return(invitation)
@user.create_invitation
@user.create_invitation.should == invitation
end

正在测试的代码:
 def create_invitation
invitation = Invitation.create
self.invitations.push(invitation)
return invitation
end

我需要模拟以下与我正在测试的内容没有直接关系的内容:
invitation.stub(:[]=)
invitation.stub(:save)

最佳答案

答案是

user = mock(User).as_null_object

但总的来说,这种方法意味着您的对象太大并且您的测试不够细化

关于ruby-on-rails - 你如何 stub 特定模拟实例的所有方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10289036/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com