Forum: Ruby on Rails Rails 2.2 Integration tests cookie store

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
0892cc1320d325d216f24d8d2b9c5d9d?d=identicon&s=25 Darren (Guest)
on 2008-11-23 00:07
(Received via mailing list)
I've upgraded an existing application from 2.1 to 2.2.2.  All of the
integration tests failed, complaining about there being no 'secret'
defined in the session_store configuration options.  There isn't a
secret defined, since we don't use the cookie session store (it's a
wap site, and many phone browsers don't support cookies).  Setting the
secret to an appropriate value fixed all the tests.

It looks like the database_manager is hardcoded to be a CookieStore in
rack_process.rb.

Is there any plan on getting integration tests to use the actual
configured cookie store?  Or should we be finding a better way to do
higher level integration tests?

Thanks,
Darren
Ba82fdbb86f8329078764197162612f7?d=identicon&s=25 Lee Fyock (Guest)
on 2008-12-09 23:45
(Received via mailing list)
What I ended up doing was overriding the default options in
RackRequest.

In test.rb, I added

class ActionController::RackRequest
  DEFAULT_SESSION_OPTIONS = {
    :database_manager => CGI::Session::MemoryStore, # store data in
memory
    :prefix           => "ruby_sess.",    # prefix session file names
    :session_path     => "/",             # available to all paths in
app
    :session_key      => "_session_id",
    :cookie_only      => false,
    :session_http_only=> true
  }
end

I get a warning about the constant already being defined, but it's
better than having the tests fail.

Also see <http://rails.lighthouseapp.com/projects/8994/tickets/1453-
gets-in-integration-test-unless-you-are-using-cookie-sessions>.

Lee
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-01-21 10:20
(Received via mailing list)
Someone to give me the configuration for
"config.action_controller.session_store = :active_record_store" ?!

Thanks.
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-02-03 09:16
(Received via mailing list)
Ok the good configuration for Session store une database by
ActiveRecord is :

  class ActionController::RackRequest
    DEFAULT_SESSION_OPTIONS = {
      :database_manager => CGI::Session::ActiveRecordStore,
      :cookie_only      => false,
      :session_http_only=> true
    }
  end

Add this code in integration test.
This topic is locked and can not be replied to.