change to test/objectspace, don't rely on Object's shape not being "too complex"
This commit is contained in:
parent
0c3f699268
commit
d74b32db9d
@ -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)
|
||||
|
Loading…
x
Reference in New Issue
Block a user