Sha256: 8ebe01672c034d99758ecbb9245b887b3f8e6b74610204512fd5d30efa170612
Contents?: true
Size: 972 Bytes
Versions: 3
Compression:
Stored size: 972 Bytes
Contents
require_relative 'helper' module Psych class TestHash < TestCase class X < Hash end def setup super @hash = { :a => 'b' } end def test_load_with_class_syck_compatibility hash = Psych.load "--- !ruby/object:Hash\n:user_id: 7\n:username: Lucas\n" assert_equal({ user_id: 7, username: 'Lucas'}, hash) end def test_empty_subclass assert_match "!ruby/hash:#{X}", Psych.dump(X.new) x = Psych.load Psych.dump X.new assert_equal X, x.class end def test_map x = Psych.load "--- !map:#{X} { }\n" assert_equal X, x.class end def test_self_referential @hash['self'] = @hash assert_cycle(@hash) end def test_cycles assert_cycle(@hash) end def test_ref_append hash = Psych.load(<<-eoyml) --- foo: &foo hello: world bar: <<: *foo eoyml assert_equal({"foo"=>{"hello"=>"world"}, "bar"=>{"hello"=>"world"}}, hash) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
psych-2.0.8 | test/psych/test_hash.rb |
psych-2.0.7 | test/psych/test_hash.rb |
psych-2.0.6 | test/psych/test_hash.rb |