mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ext/psych/lib/psych/visitors/to_ruby.rb: backwards compatibility for
hashes emitted by Syck. Github #198 * test/psych/test_hash.rb: test for change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
9670542af5
commit
0b392535df
3 changed files with 13 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
Wed Aug 6 03:41:21 2014 Aaron Patterson <aaron@tenderlovemaking.com>
|
||||
|
||||
* ext/psych/lib/psych/visitors/to_ruby.rb: backwards compatibility for
|
||||
hashes emitted by Syck. Github #198
|
||||
* test/psych/test_hash.rb: test for change.
|
||||
|
||||
Tue Aug 5 19:27:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp>
|
||||
|
||||
* ext/win32ole/win32ole.c (ole_invoke): skip VariantClear when
|
||||
|
|
|
@ -201,6 +201,8 @@ module Psych
|
|||
class_loader.rational
|
||||
h = Hash[*o.children.map { |c| accept c }]
|
||||
register o, Rational(h['numerator'], h['denominator'])
|
||||
elsif name == 'Hash'
|
||||
revive_hash(register(o, {}), o)
|
||||
else
|
||||
obj = revive((resolve_class(name) || class_loader.object), o)
|
||||
obj
|
||||
|
|
|
@ -10,6 +10,11 @@ module Psych
|
|||
@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
|
||||
|
|
Loading…
Reference in a new issue