aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/application/assets_test.rb
diff options
context:
space:
mode:
authorGuillermo Iguaran <guilleiguaran@gmail.com>2011-09-04 17:24:01 -0500
committerGuillermo Iguaran <guilleiguaran@gmail.com>2011-09-04 17:24:01 -0500
commit9bc0082f299436552aabd101f5bcb6bc2fbd6a43 (patch)
tree4dc517198f0858f04f5b9d4d2ad343caa222b1b6 /railties/test/application/assets_test.rb
parente865d125431424562b5e252ed151f6bae8dd5e8f (diff)
downloadrails-9bc0082f299436552aabd101f5bcb6bc2fbd6a43.tar.gz
rails-9bc0082f299436552aabd101f5bcb6bc2fbd6a43.tar.bz2
rails-9bc0082f299436552aabd101f5bcb6bc2fbd6a43.zip
AssetNotPrecompiledError should be raise when config.assets.digest = false, config.assets.compile = false and manifest file isn't present
Diffstat (limited to 'railties/test/application/assets_test.rb')
-rw-r--r--railties/test/application/assets_test.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/railties/test/application/assets_test.rb b/railties/test/application/assets_test.rb
index 1e0a26918b..3c7d178d37 100644
--- a/railties/test/application/assets_test.rb
+++ b/railties/test/application/assets_test.rb
@@ -180,6 +180,32 @@ module ApplicationTests
assert_match(/app.js isn't precompiled/, last_response.body)
end
+ test "assets raise AssetNotPrecompiledError when manifest file is present and requested file isn't precompiled if digest is disabled" do
+ app_file "app/views/posts/index.html.erb", "<%= javascript_include_tag 'app' %>"
+ app_file "config/initializers/compile.rb", "Rails.application.config.assets.compile = false"
+
+ app_file "config/routes.rb", <<-RUBY
+ AppTemplate::Application.routes.draw do
+ match '/posts', :to => "posts#index"
+ end
+ RUBY
+
+ ENV["RAILS_ENV"] = "development"
+ capture(:stdout) do
+ Dir.chdir(app_path){ `bundle exec rake assets:precompile` }
+ end
+
+ # Create file after of precompile
+ app_file "app/assets/javascripts/app.js", "alert();"
+
+ require "#{app_path}/config/environment"
+ class ::PostsController < ActionController::Base ; end
+
+ get '/posts'
+ assert_match(/AssetNotPrecompiledError/, last_response.body)
+ assert_match(/app.js isn't precompiled/, last_response.body)
+ end
+
test "precompile appends the md5 hash to files referenced with asset_path and run in the provided RAILS_ENV" do
app_file "app/assets/stylesheets/application.css.erb", "<%= asset_path('rails.png') %>"
# digest is default in false, we must enable it for test environment