summaryrefslogtreecommitdiff
path: root/bootstraptest/test_finalizer.rb
diff options
context:
space:
mode:
Diffstat (limited to 'bootstraptest/test_finalizer.rb')
-rw-r--r--bootstraptest/test_finalizer.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/bootstraptest/test_finalizer.rb b/bootstraptest/test_finalizer.rb
new file mode 100644
index 0000000000..ccfa0b55d6
--- /dev/null
+++ b/bootstraptest/test_finalizer.rb
@@ -0,0 +1,16 @@
+assert_normal_exit %q{
+a1,a2,b1,b2=Array.new(4){""}
+ObjectSpace.define_finalizer(b2,proc{})
+ObjectSpace.define_finalizer(b1,proc{b1.inspect})
+
+ObjectSpace.define_finalizer(a2,proc{a1.inspect})
+ObjectSpace.define_finalizer(a1,proc{})
+}, '[ruby-dev:35778]'
+
+assert_equal 'true', %q{
+ obj = Object.new
+ id = obj.object_id
+
+ ObjectSpace.define_finalizer(obj, proc { |i| print(id == i) })
+ nil
+}