Ruby on rails ruby rspec:如何使存根在每次调用时表现不同
如何使RSpec中的存根在每次调用时表现不同 比如说,Ruby on rails ruby rspec:如何使存根在每次调用时表现不同,ruby-on-rails,rspec,Ruby On Rails,Rspec,如何使RSpec中的存根在每次调用时表现不同 比如说, teststub.onCall(0).stub(:testmethod).and_raise(Exception) teststub.onCall(1).stub(:testmethod).and_return(true) 似乎RSpec没有onCall构造。如何实现这一点?替换it的实现。然后你可以用它做任何你想做的事。包括但不限于在每次通话中表现不同 teststub.stub(:testmethod) do if @alread
teststub.onCall(0).stub(:testmethod).and_raise(Exception)
teststub.onCall(1).stub(:testmethod).and_return(true)
似乎RSpec没有
onCall
构造。如何实现这一点?替换it的实现。然后你可以用它做任何你想做的事。包括但不限于在每次通话中表现不同
teststub.stub(:testmethod) do
if @already_raised
true
else
@already_raised = true
raise Exception
end
end
使用before钩子可以将它们隔离开来,非常感谢。我还没试过这个。但是,这似乎是可行的。