Re: [rspec-users] rescue
yep, that did it :) thx On Mar 18, 2008, at 11:50 PM, Zach Dennis wrote: On Tue, Mar 18, 2008 at 11:13 PM, linojon [EMAIL PROTECTED] wrote: Hi, whats the correct way to spec a rescue? This will raise it but doesnt test my code's response # controller def edit @foo = Foo.find(params[:id]) rescue flash[:notice] = Unknown foo #{params[:id]} redirect_to foos_path end # spec it should flash error if not found do Foo.should_receive(:find).and_raise get :edit, :id = '1' flash[:notice].should == Unknown foo 1 end # run Exception in... I have done a very similar thing: Foo.should_receive(:find).and_raise ActiveRecord::ActiveRecordError and then change your rescue to handle ActiveRecord::ActiveRecordError. If you get to the point where you have a generic way you'd like to handle the exceptions in a controller, or across controllers look into using the controller class method rescue_from. I'm not 100% this is what you were asking, hopefully you were just looking for confirmation, -- Zach Dennis http://www.continuousthinking.com ___ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users ___ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users
[rspec-users] rescue
Hi, whats the correct way to spec a rescue? This will raise it but doesnt test my code's response # controller def edit @foo = Foo.find(params[:id]) rescue flash[:notice] = Unknown foo #{params[:id]} redirect_to foos_path end # spec it should flash error if not found do Foo.should_receive(:find).and_raise get :edit, :id = '1' flash[:notice].should == Unknown foo 1 end # run Exception in... ___ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users
Re: [rspec-users] rescue
On Tue, Mar 18, 2008 at 11:13 PM, linojon [EMAIL PROTECTED] wrote: Hi, whats the correct way to spec a rescue? This will raise it but doesnt test my code's response # controller def edit @foo = Foo.find(params[:id]) rescue flash[:notice] = Unknown foo #{params[:id]} redirect_to foos_path end # spec it should flash error if not found do Foo.should_receive(:find).and_raise get :edit, :id = '1' flash[:notice].should == Unknown foo 1 end # run Exception in... I have done a very similar thing: Foo.should_receive(:find).and_raise ActiveRecord::ActiveRecordError and then change your rescue to handle ActiveRecord::ActiveRecordError. If you get to the point where you have a generic way you'd like to handle the exceptions in a controller, or across controllers look into using the controller class method rescue_from. I'm not 100% this is what you were asking, hopefully you were just looking for confirmation, -- Zach Dennis http://www.continuousthinking.com ___ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users