コントローラーでメソッドをテストしようとしています:
def a_method(list)
@users = []
list.each do |x|
if user=User.find(x) rescue nil
@users << user
end
end
end
私のRspecの例では、次のものがあります:
it "should do something" do
User.stub :find => 'user'
controller.a_method([1,2,3,4])
assigns[:users].should == ['user','user','user','user']
end
問題:
user=User.find(x) rescue nil
私がそれをスタブしたとしても、それは常に find メソッドを救出します。を削除すると、正常にrescue nil
動作します。
何か案は?