1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test/psych/test_set.rb
naruse 3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00

50 lines
912 B
Ruby

# frozen_string_literal: false
require_relative 'helper'
module Psych
class TestSet < TestCase
def setup
super
@set = Psych::Set.new
@set['foo'] = 'bar'
@set['bar'] = 'baz'
end
def test_dump
assert_match(/!set/, Psych.dump(@set))
end
def test_roundtrip
assert_cycle(@set)
end
###
# FIXME: Syck should also support !!set as shorthand
def test_load_from_yaml
loaded = Psych.load(<<-eoyml)
--- !set
foo: bar
bar: baz
eoyml
assert_equal(@set, loaded)
end
def test_loaded_class
assert_instance_of(Psych::Set, Psych.load(Psych.dump(@set)))
end
def test_set_shorthand
loaded = Psych.load(<<-eoyml)
--- !!set
foo: bar
bar: baz
eoyml
assert_instance_of(Psych::Set, loaded)
end
def test_set_self_reference
@set['self'] = @set
assert_cycle(@set)
end
end
end