From f69ad0e810e1fdc18dc12f77bbecfa49999ef3bf Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 29 Jan 2025 16:55:44 +0900 Subject: [Bug #21094] Update nested module names when setting temporary name --- test/ruby/test_module.rb | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_module.rb b/test/ruby/test_module.rb index 5d254452c6..9a21113fe0 100644 --- a/test/ruby/test_module.rb +++ b/test/ruby/test_module.rb @@ -3378,13 +3378,22 @@ class TestModule < Test::Unit::TestCase m::N.set_temporary_name(nil) assert_nil(m::N.name) + m::N.const_set(:O, Module.new) + m.const_set(:Recursive, m) + m::N.const_set(:Recursive, m) + m.const_set(:A, 42) + m.set_temporary_name(name = "fake_name") name.upcase! assert_equal("fake_name", m.name) assert_raise(FrozenError) {m.name.upcase!} + assert_equal("fake_name::N", m::N.name) + assert_equal("fake_name::N::O", m::N::O.name) m.set_temporary_name(nil) assert_nil m.name + assert_nil m::N.name + assert_nil m::N::O.name assert_raise_with_message(ArgumentError, "empty class/module name") do m.set_temporary_name("") -- cgit v1.2.3