diff options
author | Alexander Momchilov <alexander.momchilov@shopify.com> | 2022-07-22 16:45:03 -0400 |
---|---|---|
committer | Alexander Momchilov <alexander.momchilov@shopify.com> | 2022-07-22 16:57:54 -0400 |
commit | d9f7289190d424981555dec9f2c019f6a270f205 (patch) | |
tree | 98503a87db510bc0139a7dfefb2870485f4c1d54 /test/psych/test_object.rb | |
parent | 0bc30cb4cb03164fb60cab7f0d2eb27fd6e78193 (diff) | |
download | psych-d9f7289190d424981555dec9f2c019f6a270f205.tar.gz |
Test that recursive refs dump as aliases
Diffstat (limited to 'test/psych/test_object.rb')
-rw-r--r-- | test/psych/test_object.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/psych/test_object.rb b/test/psych/test_object.rb index 0faf6b2..648a3ca 100644 --- a/test/psych/test_object.rb +++ b/test/psych/test_object.rb @@ -41,5 +41,17 @@ module Psych assert_instance_of(Foo, loaded) assert_equal loaded, loaded.parent end + + def test_cyclic_reference_uses_alias + foo = Foo.new(nil) + foo.parent = foo + + expected = <<~eoyaml + --- &1 !ruby/object:Psych::Foo + parent: *1 + eoyaml + + assert_equal expected, Psych.dump(foo) + end end end |