Permalink
Cannot retrieve contributors at this time
Fetching contributors…

# frozen_string_literal: true | |
require_relative 'helper' | |
module Psych | |
class TestSerializeSubclasses < TestCase | |
class SomeObject | |
def initialize one, two | |
@one = one | |
@two = two | |
end | |
def == other | |
@one == other.instance_eval { @one } && | |
@two == other.instance_eval { @two } | |
end | |
end | |
def test_some_object | |
so = SomeObject.new('foo', [1,2,3]) | |
assert_equal so, Psych.load(Psych.dump(so)) | |
end | |
class StructSubclass < Struct.new(:foo) | |
def initialize foo, bar | |
super(foo) | |
@bar = bar | |
end | |
def == other | |
super(other) && @bar == other.instance_eval{ @bar } | |
end | |
end | |
def test_struct_subclass | |
so = StructSubclass.new('foo', [1,2,3]) | |
assert_equal so, Psych.load(Psych.dump(so)) | |
end | |
end | |
end |