From ebb7bd78351b7975f28fdcbadbbf0fe4804be2f2 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Tue, 13 Sep 2005 08:31:32 +0000 Subject: Added easy assignment of fragment cache store through use of symbols for included stores (old way still works too) git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2230 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- .../test/controller/fragment_store_setting_test.rb | 45 ++++++++++++++++++++++ .../test/controller/session_management_test.rb | 10 +++++ 2 files changed, 55 insertions(+) create mode 100644 actionpack/test/controller/fragment_store_setting_test.rb (limited to 'actionpack/test') diff --git a/actionpack/test/controller/fragment_store_setting_test.rb b/actionpack/test/controller/fragment_store_setting_test.rb new file mode 100644 index 0000000000..fde70965f6 --- /dev/null +++ b/actionpack/test/controller/fragment_store_setting_test.rb @@ -0,0 +1,45 @@ +require File.dirname(__FILE__) + '/../abstract_unit' + +MemCache = Struct.new(:MemCache, :address) + +class FragmentCacheStoreSettingTest < Test::Unit::TestCase + def teardown + ActionController::Base.fragment_cache_store = ActionController::Caching::Fragments::MemoryStore.new + end + + def test_file_fragment_cache_store + ActionController::Base.fragment_cache_store = :file_store, "/path/to/cache/directory" + assert_kind_of( + ActionController::Caching::Fragments::FileStore, + ActionController::Base.fragment_cache_store + ) + assert_equal "/path/to/cache/directory", ActionController::Base.fragment_cache_store.cache_path + end + + def test_drb_fragment_cache_store + ActionController::Base.fragment_cache_store = :drb_store, "druby://localhost:9192" + assert_kind_of( + ActionController::Caching::Fragments::DRbStore, + ActionController::Base.fragment_cache_store + ) + assert_equal "druby://localhost:9192", ActionController::Base.fragment_cache_store.address + end + + def test_mem_cache_fragment_cache_store + ActionController::Base.fragment_cache_store = :mem_cache_store, "localhost" + assert_kind_of( + ActionController::Caching::Fragments::MemCacheStore, + ActionController::Base.fragment_cache_store + ) + assert_equal "localhost", ActionController::Base.fragment_cache_store.address + end + + def test_object_assigned_fragment_cache_store + ActionController::Base.fragment_cache_store = ActionController::Caching::Fragments::FileStore.new("/path/to/cache/directory") + assert_kind_of( + ActionController::Caching::Fragments::FileStore, + ActionController::Base.fragment_cache_store + ) + assert_equal "/path/to/cache/directory", ActionController::Base.fragment_cache_store.cache_path + end +end \ No newline at end of file diff --git a/actionpack/test/controller/session_management_test.rb b/actionpack/test/controller/session_management_test.rb index 84cbd28387..c611cb8af5 100644 --- a/actionpack/test/controller/session_management_test.rb +++ b/actionpack/test/controller/session_management_test.rb @@ -81,4 +81,14 @@ class SessionManagementTest < Test::Unit::TestCase get :conditional, :ws => "ws" assert_equal false, @request.session_options end + + def test_session_store_setting + ActionController::Base.session_store = :drb_store + assert_equal CGI::Session::DRbStore, ActionController::Base.session_store + + if Object.const_defined?(:ActiveRecord) + ActionController::Base.session_store = :active_record_store + assert_equal CGI::Session::ActiveRecordStore, ActionController::Base.session_store + end + end end -- cgit v1.2.3