aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorXavier Noria <fxn@hashref.com>2019-04-11 22:43:45 +0200
committerXavier Noria <fxn@hashref.com>2019-04-11 23:10:13 +0200
commit7b6b10542d5dac2b50f2578143dc5d70120d1146 (patch)
tree97faab6b3ebdd667a068d8955ecfa8ffa392a589 /railties
parent23392eff9f8065475739e58232a5db97604f8056 (diff)
downloadrails-7b6b10542d5dac2b50f2578143dc5d70120d1146.tar.gz
rails-7b6b10542d5dac2b50f2578143dc5d70120d1146.tar.bz2
rails-7b6b10542d5dac2b50f2578143dc5d70120d1146.zip
improves the reloading disabled error message
The original message from Zeitwerk is "can't reload, please call loader.enable_reloading before setup (Zeitwerk::Error)", which is not very informative for Rails programmers. Rails should err with a message worded in terms of its interface.
Diffstat (limited to 'railties')
-rw-r--r--railties/test/application/zeitwerk_integration_test.rb9
1 files changed, 9 insertions, 0 deletions
diff --git a/railties/test/application/zeitwerk_integration_test.rb b/railties/test/application/zeitwerk_integration_test.rb
index b248459e47..40d06ee999 100644
--- a/railties/test/application/zeitwerk_integration_test.rb
+++ b/railties/test/application/zeitwerk_integration_test.rb
@@ -156,6 +156,15 @@ class ZeitwerkIntegrationTest < ActiveSupport::TestCase
assert_not Rails.autoloaders.once.reloading_enabled?
end
+ test "reloading raises if config.cache_classes is true" do
+ boot("production")
+
+ e = assert_raises(StandardError) do
+ deps.clear
+ end
+ assert_equal "reloading is disabled because config.cache_classes is true", e.message
+ end
+
test "eager loading loads code in engines" do
$test_blog_engine_eager_loaded = false