diff --git a/lib/draper/base.rb b/lib/draper/base.rb index 25558ec..6f45dc5 100644 --- a/lib/draper/base.rb +++ b/lib/draper/base.rb @@ -2,6 +2,7 @@ module Draper class Base require 'active_support/core_ext/class/attribute' class_attribute :denied, :allowed, :source_class + attr_accessor :model DEFAULT_DENIED = Object.new.methods self.denied = DEFAULT_DENIED @@ -42,11 +43,7 @@ module Draper @model end - private - def model - @model - end - + private def select_methods self.allowed || (model.public_methods - denied) end diff --git a/spec/base_spec.rb b/spec/base_spec.rb index da351ec..9ca34e8 100644 --- a/spec/base_spec.rb +++ b/spec/base_spec.rb @@ -9,6 +9,10 @@ describe Draper::Base do subject.to_model.should == source end + it "should return the wrapped object when asked for model" do + subject.model.should == source + end + it "should wrap source methods so they still accept blocks" do subject.gsub("Sample"){|match| "Super"}.should == "Super String" end