mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[lib/ostruct] Fix YAML test
This commit is contained in:
parent
52369fc545
commit
a09ddfc420
Notes:
git
2021-06-15 01:29:14 +09:00
1 changed files with 3 additions and 3 deletions
|
@ -370,18 +370,18 @@ class TC_OpenStruct < Test::Unit::TestCase
|
|||
|
||||
def test_legacy_yaml
|
||||
s = "--- !ruby/object:OpenStruct\ntable:\n :foo: 42\n"
|
||||
o = YAML.unsafe_load(s)
|
||||
o = YAML.safe_load(s, permitted_classes: [Symbol, OpenStruct])
|
||||
assert_equal(42, o.foo)
|
||||
|
||||
o = OpenStruct.new(table: {foo: 42})
|
||||
assert_equal({foo: 42}, YAML.unsafe_load(YAML.dump(o)).table)
|
||||
assert_equal({foo: 42}, YAML.safe_load(YAML.dump(o), permitted_classes: [Symbol, OpenStruct]).table)
|
||||
end
|
||||
|
||||
def test_yaml
|
||||
h = {name: "John Smith", age: 70, pension: 300.42}
|
||||
yaml = "--- !ruby/object:OpenStruct\nname: John Smith\nage: 70\npension: 300.42\n"
|
||||
os1 = OpenStruct.new(h)
|
||||
os2 = YAML.unsafe_load(os1.to_yaml)
|
||||
os2 = YAML.safe_load(os1.to_yaml, permitted_classes: [Symbol, OpenStruct])
|
||||
assert_equal yaml, os1.to_yaml
|
||||
assert_equal os1, os2
|
||||
assert_equal true, os1.eql?(os2)
|
||||
|
|
Loading…
Reference in a new issue