On Mon, 15 Oct 2007 23:46:32 -0500, David Chelimsky wrote: > On 10/15/07, Steve <[EMAIL PROTECTED]> wrote: >> I'm trying to write some tests for the ApplicationController as shared >> tests that can be run in all of my other controller tests, but am getting >> a nil.rewrite error. Below is what I have... >> >> describe AccountController do >> it_should_behave_like 'Application controller' >> end >> >> describe 'Application controller', :shared => true do >> >> it 'should fail require_login check if not logged in' do >> User.current = nil >> controller.require_login.should be_false >> response.should redirect_to(:controller => 'account', :action => 'logon') >> end >> end >> >> def require_login >> return true if User.current.logged_in? >> >> redirect_to :controller => "account", :action => "logon" and return false >> end >> >> The line it's failing on is the redirect_to in require_login. What am I >> doing wrong? > > What's the error?
NoMethodError in 'AccountController should fail require_login check if not logged in' You have a nil object when you didn't expect it! The error occurred while evaluating nil.rewrite trunk/app/controllers/application.rb:28:in `require_login' ./spec/controllers/application_controller_spec.rb:12: The "redirect_to" call is line 28, and "controller.require_login.should" is line 12. _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users