test/twin/inherit_test.rb in disposable-0.2.5 vs test/twin/inherit_test.rb in disposable-0.2.6

- old
+ new

@@ -52,6 +52,34 @@ # inherit inline twins when not overriding. it { Twin::EmptyCompilation.new(album).artist.artist_id.must_equal 1 } # inherit inline twins when overriding. it { Twin::Compilation.new(album).artist.artist_id.must_equal 1 } -end \ No newline at end of file + + describe "custom accessors get inherited" do + class Singer < Disposable::Twin + property :name + + def name + super.reverse + end + + def name=(val) + super(val.downcase) + end + end + + class Star < Singer + end + + let (:model) { Model::Artist.new("Helloween") } + + it do + artist = Star.new(model) + artist.name.must_equal("neewolleh") + + artist.name = "HELLOWEEN" + # artist.with_custom_setter = "this gets ignored" + artist.name.must_equal("neewolleh") + end + end +end