Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fallback to default label when block is provided

  • Loading branch information...
commit c88efe3c0c2d768d28800d0852af5e38a78d20b7 1 parent 56c0b4f
Alex Kwiatkowski & Peter Jaros authored
Showing with 11 additions and 3 deletions.
  1. +1 −1  lib/simple_form/form_builder.rb
  2. +10 −2 test/form_builder/label_test.rb
2  lib/simple_form/form_builder.rb
View
@@ -273,7 +273,7 @@ def hint(attribute_name, options={})
# f.label :name, :id => "cool_label"
#
def label(attribute_name, *args)
- return super if args.first.is_a?(String)
+ return super if args.first.is_a?(String) || block_given?
options = args.extract_options!
options[:label_html] = options.dup
options[:label] = options.delete(:label)
12 test/form_builder/label_test.rb
View
@@ -2,9 +2,9 @@
require 'test_helper'
class LabelTest < ActionView::TestCase
- def with_label_for(object, *args)
+ def with_label_for(object, *args, &block)
with_concat_form_for(object) do |f|
- f.label(*args)
+ f.label(*args, &block)
end
end
@@ -34,6 +34,14 @@ def with_label_for(object, *args)
assert_no_select 'label.string'
end
+ test 'builder should fallback to default label when block is given' do
+ with_label_for @user, :name do
+ 'Nome do usuário'
+ end
+ assert_select 'label', 'Nome do usuário'
+ assert_no_select 'label.string'
+ end
+
test 'builder allows label order to be changed' do
swap SimpleForm, :label_text => lambda { |l, r| "#{l}:" } do
with_label_for @user, :age
Please sign in to comment.
Something went wrong with that request. Please try again.