From d74b32db9d1e0234b17e4645d270394f7b657f85 Mon Sep 17 00:00:00 2001 From: lukeg Date: Mon, 3 Apr 2023 14:46:43 -0400 Subject: [PATCH] change to test/objectspace, don't rely on Object's shape not being "too complex" --- test/objspace/test_objspace.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/objspace/test_objspace.rb b/test/objspace/test_objspace.rb index 172bd6fff6..4d8adba5e8 100644 --- a/test/objspace/test_objspace.rb +++ b/test/objspace/test_objspace.rb @@ -287,13 +287,17 @@ class TestObjSpace < Test::Unit::TestCase JSON.parse(info) if defined?(JSON) end + class TooComplex; end + if defined?(RubyVM::Shape) def test_dump_too_complex_shape RubyVM::Shape::SHAPE_MAX_VARIATIONS.times do - Object.new.instance_variable_set(:"@a#{_1}", 1) + TooComplex.new.instance_variable_set(:"@a#{_1}", 1) end - tc = Object.new + tc = TooComplex.new + info = ObjectSpace.dump(tc) + assert_not_match(/"too_complex_shape"/, info) tc.instance_variable_set(:@new_ivar, 1) info = ObjectSpace.dump(tc) assert_match(/"too_complex_shape":true/, info)