Session (stored in db) not working in testing mode


I just switched from storing my sessions on disk to storing them in
MySQL. Changing environment.rb ‘config.action_controller.session_store =
:active_record_store’. But now all my tests fail. I get the following

  1. Failure:
    ecated_assertions.rb:23:in assert_session_has' ./functional/../test_helper.rb:34:inlogin’
    functional/ad_controller_test.rb:49:in `test_authorized_new’]:
    <:user_id> is not in the session
    <#<ActionController::TestSession:0x31d2198 @attributes={“flash”=>{}}>>

Have I overlooked something?

Kind regards,


You’ve created the sessions table properly, right?

my sessions table usually has:

id(int11), session_id(int11), data(text), updated_at(datetime)


Yes, I guess. It contains:

id (int(11)), session_id (varchar(50)), user_id(int11)), data (text),
created_at (datetime) and updated_at(datetime).

In development mode it works perfectly, only in testing mode it starts
throwing errors.


This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs