[rspec-users] session variable not available in global before(:each, :type => :controller)

Rob Aldred Rob.aldred at stardotstar.com
Fri Jan 14 05:07:06 EST 2011

Hi, I'm refactoring some specs, in controller specs I have a before(:each) which sets up things required in the session, wanted to avoid duplication and put the initial setup global for each controller spec

my before filter is...

config.before(:each, :type => :controller) do
  session[:current_user] = @user
  session[:instance] = @instance

@user and @instance are also set in this before(:each) i've just hidden them for readability here

I get the following error when running the controller tests

undefined method `session' for nil:NilClass
I would expect the global before callbacks to have the same things as the ones in the individual tests but I guess maybe they are loaded before the rails environment has been initialised?


Rob Aldred

Software Developer
rob at stardotstar.com
twitter: stardotstar

47 Newton Street, Manchester, M1 1FT
T: +44 (0) 161 236 9740

This email and any files or ideas transmitted within it are sent in 
confidence and are intended solely for the use of the individual or 
entity to whom they are addressed. If you have received this email 
in error please notify the system manager at info at stardotstar.com

More information about the rspec-users mailing list