diff options
author | Xavier Noria <fxn@hashref.com> | 2019-07-25 23:02:03 +0200 |
---|---|---|
committer | Xavier Noria <fxn@hashref.com> | 2019-07-25 23:14:29 +0200 |
commit | 59c6d29ffac990ab16e162d79aba12e13232a896 (patch) | |
tree | a686b2a0ebc903c002d2fe0964fd8a2850dee61b /railties | |
parent | 7f21e04e618513aff1674ed767294a94a903dd51 (diff) | |
download | rails-59c6d29ffac990ab16e162d79aba12e13232a896.tar.gz rails-59c6d29ffac990ab16e162d79aba12e13232a896.tar.bz2 rails-59c6d29ffac990ab16e162d79aba12e13232a896.zip |
let autoloaded? support modules with overridden names [closes #36757]
Diffstat (limited to 'railties')
-rw-r--r-- | railties/test/application/zeitwerk_integration_test.rb | 9 |
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 9146222f73..ff8c06b479 100644 --- a/railties/test/application/zeitwerk_integration_test.rb +++ b/railties/test/application/zeitwerk_integration_test.rb @@ -98,6 +98,15 @@ class ZeitwerkIntegrationTest < ActiveSupport::TestCase assert_nil deps.safe_constantize("Admin") end + test "autoloaded? and overridden class names" do + invalid_constant_name = Module.new do + def self.name + "primary::SchemaMigration" + end + end + assert_not deps.autoloaded?(invalid_constant_name) + end + test "unloadable constants (main)" do app_file "app/models/user.rb", "class User; end" app_file "app/models/post.rb", "class Post; end" |