added better specs and allow equality to be checked for both decorator and decorator#model
This commit is contained in:
parent
064ac47bdd
commit
b84818cb5f
|
@ -127,7 +127,7 @@ module Draper
|
||||||
#
|
#
|
||||||
# @return [Boolean] true if other's model == self's model
|
# @return [Boolean] true if other's model == self's model
|
||||||
def ==(other)
|
def ==(other)
|
||||||
@model == other.model
|
@model == (other.respond_to?(:model) ? other.model : other)
|
||||||
end
|
end
|
||||||
|
|
||||||
def respond_to?(method, include_private = false)
|
def respond_to?(method, include_private = false)
|
||||||
|
|
|
@ -22,10 +22,6 @@ module Draper
|
||||||
super || @wrapped_collection.respond_to?(method)
|
super || @wrapped_collection.respond_to?(method)
|
||||||
end
|
end
|
||||||
|
|
||||||
def include?(member)
|
|
||||||
@wrapped_collection.include?(member)
|
|
||||||
end
|
|
||||||
|
|
||||||
def to_s
|
def to_s
|
||||||
"#<DecoratedEnumerableProxy of #{@klass} for #{@wrapped_collection.inspect}>"
|
"#<DecoratedEnumerableProxy of #{@klass} for #{@wrapped_collection.inspect}>"
|
||||||
end
|
end
|
||||||
|
|
|
@ -218,10 +218,10 @@ describe Draper::Base do
|
||||||
it "should return whether the member is in the array for a decorated wrapped collection" do
|
it "should return whether the member is in the array for a decorated wrapped collection" do
|
||||||
# This tests that include? is defined for the DecoratedEnumerableProxy
|
# This tests that include? is defined for the DecoratedEnumerableProxy
|
||||||
member = paged_array.first
|
member = paged_array.first
|
||||||
decorator = ProductDecorator.decorate(paged_array)
|
subject.respond_to?(:include?)
|
||||||
decorator.respond_to?(:include?)
|
subject.include?(member).should == true
|
||||||
decorator.include?(member).should == true
|
subject.include?(subject.first).should == true
|
||||||
decorator.include?(Product.new).should == false
|
subject.include?(Product.new).should == false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue