From 38fafe60cd6469a42f8ebe1975ae03783ca101b9 Mon Sep 17 00:00:00 2001 From: "Petr Chalupa (Pitr)" Date: Fri, 28 Sep 2012 12:13:47 +0200 Subject: [PATCH] #29 double tag with attributes passed through class shortcut will not render corectly --- lib/hammer_builder/abstract/abstract_double_tag.rb | 2 +- spec/hammer_builder_spec.rb | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/hammer_builder/abstract/abstract_double_tag.rb b/lib/hammer_builder/abstract/abstract_double_tag.rb index 2ee579d..aa13443 100644 --- a/lib/hammer_builder/abstract/abstract_double_tag.rb +++ b/lib/hammer_builder/abstract/abstract_double_tag.rb @@ -19,11 +19,11 @@ def method_missing(method, *args, &block) self.rclass.add_attributes Data::Attribute.new(method.to_sym, :string) self.send method, *args, &block else - self.__send__($3 == '!' ? :id : :class, $2.gsub(@_str_underscore, @_str_dash), &block) attributes(if args.last.is_a?(Hash) args.pop end) content args.first + self.__send__($3 == '!' ? :id : :class, $2.gsub(@_str_underscore, @_str_dash), &block) end else super(method, *args, &block) diff --git a/spec/hammer_builder_spec.rb b/spec/hammer_builder_spec.rb index e08ec20..562d91f 100644 --- a/spec/hammer_builder_spec.rb +++ b/spec/hammer_builder_spec.rb @@ -133,6 +133,8 @@ def quick_render &block quick_render { div.id 'an', 'id', nil, false }.should == '
' quick_render { div.an_id! :class => 'big' }.should == '
' + quick_render { div.an_id!(:class => 'big') { text 'content' } }.should == + '
content
' quick_render { div.an_id! 'content', :class => 'big' }.should == '
content
' quick_render { div.an_id! 'content' }.should == '
content
' quick_render { hr.an_id! :class => 'big' }.should == '
'