aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/dispatch/session/test_session_test.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2009-04-22 00:22:25 -0700
committerJeremy Kemper <jeremy@bitsweat.net>2009-04-22 00:22:25 -0700
commit6ee8329af6cd0c62945f216fae80fdd1679d477d (patch)
tree1fabd263901d757da326d20d20a3e7d1c9ca9e77 /actionpack/test/dispatch/session/test_session_test.rb
parent70c544df71dbea561d6136ecb13bee43cda64bd1 (diff)
parent380431e4ed12d184c4e4891fbb74fdc38a51d2f2 (diff)
downloadrails-6ee8329af6cd0c62945f216fae80fdd1679d477d.tar.gz
rails-6ee8329af6cd0c62945f216fae80fdd1679d477d.tar.bz2
rails-6ee8329af6cd0c62945f216fae80fdd1679d477d.zip
Merge branch 'master' of git@github.com:rails/rails
Diffstat (limited to 'actionpack/test/dispatch/session/test_session_test.rb')
-rw-r--r--actionpack/test/dispatch/session/test_session_test.rb58
1 files changed, 58 insertions, 0 deletions
diff --git a/actionpack/test/dispatch/session/test_session_test.rb b/actionpack/test/dispatch/session/test_session_test.rb
new file mode 100644
index 0000000000..de6539e1cc
--- /dev/null
+++ b/actionpack/test/dispatch/session/test_session_test.rb
@@ -0,0 +1,58 @@
+require 'abstract_unit'
+require 'stringio'
+
+class ActionController::TestSessionTest < ActiveSupport::TestCase
+
+ def test_calling_delete_without_parameters_raises_deprecation_warning_and_calls_to_clear_test_session
+ assert_deprecated(/use clear instead/){ ActionController::TestSession.new.delete }
+ end
+
+ def test_calling_update_without_parameters_raises_deprecation_warning_and_calls_to_clear_test_session
+ assert_deprecated(/use replace instead/){ ActionController::TestSession.new.update }
+ end
+
+ def test_calling_close_raises_deprecation_warning
+ assert_deprecated(/sessions should no longer be closed/){ ActionController::TestSession.new.close }
+ end
+
+ def test_defaults
+ session = ActionController::TestSession.new
+ assert_equal({}, session.data)
+ assert_equal('', session.session_id)
+ end
+
+ def test_ctor_allows_setting
+ session = ActionController::TestSession.new({:one => 'one', :two => 'two'})
+ assert_equal('one', session[:one])
+ assert_equal('two', session[:two])
+ end
+
+ def test_setting_session_item_sets_item
+ session = ActionController::TestSession.new
+ session[:key] = 'value'
+ assert_equal('value', session[:key])
+ end
+
+ def test_calling_delete_removes_item
+ session = ActionController::TestSession.new
+ session[:key] = 'value'
+ assert_equal('value', session[:key])
+ session.delete(:key)
+ assert_nil(session[:key])
+ end
+
+ def test_calling_update_with_params_passes_to_attributes
+ session = ActionController::TestSession.new()
+ session.update('key' => 'value')
+ assert_equal('value', session[:key])
+ end
+
+ def test_clear_emptys_session
+ params = {:one => 'one', :two => 'two'}
+ session = ActionController::TestSession.new({:one => 'one', :two => 'two'})
+ session.clear
+ assert_nil(session[:one])
+ assert_nil(session[:two])
+ end
+
+end \ No newline at end of file