summaryrefslogtreecommitdiff
path: root/bootstraptest/test_objectspace.rb
diff options
context:
space:
mode:
Diffstat (limited to 'bootstraptest/test_objectspace.rb')
-rw-r--r--bootstraptest/test_objectspace.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/bootstraptest/test_objectspace.rb b/bootstraptest/test_objectspace.rb
index 486d5aff73..63a8d99322 100644
--- a/bootstraptest/test_objectspace.rb
+++ b/bootstraptest/test_objectspace.rb
@@ -32,3 +32,24 @@ assert_normal_exit %q{
end
}
}, '[ruby-dev:31985]'
+
+assert_normal_exit %q{
+ ObjectSpace.define_finalizer("") do
+ Thread::Mutex.new.lock
+ end
+}, '[ruby-dev:44049]'
+
+assert_normal_exit %q{
+ ObjectSpace.define_finalizer("") do
+ Thread.new {}
+ end
+}, '[ruby-core:37858]'
+
+assert_equal 'ok', %q{
+ objects_and_ids = 1000.times.map { o = Object.new; [o, o.object_id] }
+ objects_and_ids.each { |expected, id|
+ actual = ObjectSpace._id2ref(id)
+ raise "expected #{expected.inspect}, got #{actual.inspect}" unless actual.equal?(expected)
+ }
+ 'ok'
+}