diff options
Diffstat (limited to 'bootstraptest/test_class.rb')
| -rw-r--r-- | bootstraptest/test_class.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/bootstraptest/test_class.rb b/bootstraptest/test_class.rb index ad2844106f..b7fe0a1acd 100644 --- a/bootstraptest/test_class.rb +++ b/bootstraptest/test_class.rb @@ -11,6 +11,16 @@ assert_equal 'C', %q( class C; end C.new.class.name ) assert_equal 'Class', %q( class C; end C.new.class.class ) +assert_equal 'true', %q( Object.__send__(:remove_const, :TrueClass) + GC.start + true.inspect) +assert_equal 'false', %q( Object.__send__(:remove_const, :FalseClass) + GC.start + false.inspect) +assert_equal 'nil', %q( Object.__send__(:remove_const, :NilClass) + GC.start + nil.inspect) + # inherited class assert_equal 'true', %q( class A; end @@ -144,3 +154,16 @@ assert_equal '3', %q{ } $i } + +assert_match /::C\z/, %q{ + c = nil + Module.new{|m| c = class m::C; name; end} + c +}, '[ruby-dev:38456]' + +assert_normal_exit %q{ + s = Symbol.dup + class << s + end + s.allocate.to_s +}, '[ruby-core:30843]' |
