diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2008-05-11 13:18:49 -0500 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2008-05-11 13:18:49 -0500 |
commit | c43623c48b977d05413d86867651bfc3762b745a (patch) | |
tree | 4ef380d032f57fdff2e9567fcc7b76db96249a6e /actionpack/test | |
parent | 8857994f92293a78df9addbc0998ef02fca82fae (diff) | |
download | rails-c43623c48b977d05413d86867651bfc3762b745a.tar.gz rails-c43623c48b977d05413d86867651bfc3762b745a.tar.bz2 rails-c43623c48b977d05413d86867651bfc3762b745a.zip |
Added session(:on) to turn session management back on in a controller subclass if the superclass turned it off (Peter Jones) [#136 state:resolved]
Diffstat (limited to 'actionpack/test')
-rw-r--r-- | actionpack/test/controller/session_management_test.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/actionpack/test/controller/session_management_test.rb b/actionpack/test/controller/session_management_test.rb index 495a9153f8..592b0b549d 100644 --- a/actionpack/test/controller/session_management_test.rb +++ b/actionpack/test/controller/session_management_test.rb @@ -13,6 +13,19 @@ class SessionManagementTest < Test::Unit::TestCase end end + class SessionOffOnController < ActionController::Base + session :off + session :on, :only => :tell + + def show + render :text => "done" + end + + def tell + render :text => "done" + end + end + class TestController < ActionController::Base session :off, :only => :show session :session_secure => true, :except => :show @@ -100,6 +113,15 @@ class SessionManagementTest < Test::Unit::TestCase assert_equal false, @request.session_options end + def test_session_off_then_on_globally + @controller = SessionOffOnController.new + get :show + assert_equal false, @request.session_options + get :tell + assert_instance_of Hash, @request.session_options + assert_equal false, @request.session_options[:disabled] + end + def test_session_off_conditionally @controller = TestController.new get :show |