Is 60 seconds enough?  Can 30 work?  Default is only 10 seconds.

diff --git a/test/test_weakref.rb b/test/test_weakref.rb
index 36b5d5b..d21b431 100644
--- a/test/test_weakref.rb
+++ b/test/test_weakref.rb
@@ -63,7 +63,7 @@ class TestWeakRef < Test::Unit::TestCase
 
   def test_repeated_object_leak
     bug10537 = '[ruby-core:66428]'
-    assert_no_memory_leak(%w(-rweakref), '', <<-'end;', bug10537)
+    assert_no_memory_leak(%w(-rweakref), '', <<-'end;', bug10537, timeout: 60)
       a = Object.new
       150_000.times { WeakRef.new(a) }
     end;