diff options
Diffstat (limited to 'actionpack/test/controller')
-rw-r--r-- | actionpack/test/controller/session_management_test.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/actionpack/test/controller/session_management_test.rb b/actionpack/test/controller/session_management_test.rb index 707c4287f1..84cbd28387 100644 --- a/actionpack/test/controller/session_management_test.rb +++ b/actionpack/test/controller/session_management_test.rb @@ -16,6 +16,8 @@ class SessionManagementTest < Test::Unit::TestCase class TestController < ActionController::Base session :off, :only => :show session :session_secure => true, :except => :show + session :off, :only => :conditional, + :if => Proc.new { |r| r.parameters[:ws] } def show render_text "done" @@ -24,6 +26,10 @@ class SessionManagementTest < Test::Unit::TestCase def tell render_text "done" end + + def conditional + render_text ">>>#{params[:ws]}<<<" + end end class SpecializedController < SessionOffController @@ -67,4 +73,12 @@ class SessionManagementTest < Test::Unit::TestCase get :another assert_equal false, @request.session_options end + + def test_session_off_with_if + @controller = TestController.new + get :conditional + assert_instance_of Hash, @request.session_options + get :conditional, :ws => "ws" + assert_equal false, @request.session_options + end end |