aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Harper <timcharper@gmail.com>2008-10-20 13:21:59 -0500
committerJoshua Peek <josh@joshpeek.com>2008-10-20 13:21:59 -0500
commitfcb45e5ec3c8ab7b11391c0639609918876ddbb2 (patch)
tree79b101edc15fcb3df2a9a0bda2917bec0514e901
parent1082cba4417100552a879c0bc0d415f9944767f8 (diff)
downloadrails-fcb45e5ec3c8ab7b11391c0639609918876ddbb2.tar.gz
rails-fcb45e5ec3c8ab7b11391c0639609918876ddbb2.tar.bz2
rails-fcb45e5ec3c8ab7b11391c0639609918876ddbb2.zip
Ensure ActionView::Helpers::AssetTagHelper::AssetTag::Cache is cleared before loading so changes to asset files are picked up by the broswer [#1233 state:resolved]
Signed-off-by: Joshua Peek <josh@joshpeek.com>
-rw-r--r--actionpack/lib/action_controller/dispatcher.rb3
-rw-r--r--actionpack/test/controller/dispatcher_test.rb10
2 files changed, 11 insertions, 2 deletions
diff --git a/actionpack/lib/action_controller/dispatcher.rb b/actionpack/lib/action_controller/dispatcher.rb
index 90c8400c11..28f8ce3d53 100644
--- a/actionpack/lib/action_controller/dispatcher.rb
+++ b/actionpack/lib/action_controller/dispatcher.rb
@@ -39,7 +39,7 @@ module ActionController
# Add a preparation callback. Preparation callbacks are run before every
# request in development mode, and before the first request in production
# mode.
- #
+ #
# An optional identifier may be supplied for the callback. If provided,
# to_prepare may be called again with the same identifier to replace the
# existing callback. Passing an identifier is a suggested practice if the
@@ -144,6 +144,7 @@ module ActionController
Routing::Routes.reload
ActionController::Base.view_paths.reload!
+ ActionView::Helpers::AssetTagHelper::AssetTag::Cache.clear
end
# Cleanup the application by clearing out loaded classes so they can
diff --git a/actionpack/test/controller/dispatcher_test.rb b/actionpack/test/controller/dispatcher_test.rb
index 911fcab67b..3ee78a6156 100644
--- a/actionpack/test/controller/dispatcher_test.rb
+++ b/actionpack/test/controller/dispatcher_test.rb
@@ -26,9 +26,17 @@ class DispatcherTest < Test::Unit::TestCase
end
def test_clears_dependencies_after_dispatch_if_in_loading_mode
- ActionController::Routing::Routes.expects(:reload).once
ActiveSupport::Dependencies.expects(:clear).once
+ dispatch(@output, false)
+ end
+
+ def test_reloads_routes_before_dispatch_if_in_loading_mode
+ ActionController::Routing::Routes.expects(:reload).once
+ dispatch(@output, false)
+ end
+ def test_clears_asset_tag_cache_before_dispatch_if_in_loading_mode
+ ActionView::Helpers::AssetTagHelper::AssetTag::Cache.expects(:clear).once
dispatch(@output, false)
end