diff options
author | José Valim <jose.valim@gmail.com> | 2011-11-17 00:02:49 -0800 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2011-11-17 00:02:49 -0800 |
commit | e2d3060a68fcd680ca37a625cfc097131947edb6 (patch) | |
tree | adc24113af32bc8df3c3d60acb551a1180db8f96 /actionpack/test/template | |
parent | e6f3299158fd2b3d34c2fe4ee98097b516d678c0 (diff) | |
parent | c2b6f63bbe2740fd63a36eeefe17d51813a17324 (diff) | |
download | rails-e2d3060a68fcd680ca37a625cfc097131947edb6.tar.gz rails-e2d3060a68fcd680ca37a625cfc097131947edb6.tar.bz2 rails-e2d3060a68fcd680ca37a625cfc097131947edb6.zip |
Merge pull request #3654 from wildchild/label_i18n
Fix impractical I18n lookup in nested fields_for
Diffstat (limited to 'actionpack/test/template')
-rw-r--r-- | actionpack/test/template/form_helper_test.rb | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/actionpack/test/template/form_helper_test.rb b/actionpack/test/template/form_helper_test.rb index 6434d9645e..34486bb151 100644 --- a/actionpack/test/template/form_helper_test.rb +++ b/actionpack/test/template/form_helper_test.rb @@ -27,7 +27,13 @@ class FormHelperTest < ActionView::TestCase :body => "Write entire text here", :color => { :red => "Rojo" + }, + :comments => { + :body => "Write body here" } + }, + :tag => { + :value => "Tag" } } } @@ -68,6 +74,12 @@ class FormHelperTest < ActionView::TestCase @post.secret = 1 @post.written_on = Date.new(2004, 6, 15) + @post.comments = [] + @post.comments << @comment + + @post.tags = [] + @post.tags << Tag.new + @blog_post = Blog::Post.new("And his name will be forty and four.", 44) end @@ -151,6 +163,40 @@ class FormHelperTest < ActionView::TestCase I18n.locale = old_locale end + def test_label_with_locales_and_nested_attributes + old_locale, I18n.locale = I18n.locale, :label + form_for(@post, :html => { :id => 'create-post' }) do |f| + f.fields_for(:comments) do |cf| + concat cf.label(:body) + end + end + + expected = whole_form("/posts/123", "create-post" , "edit_post", :method => "put") do + "<label for=\"post_comments_attributes_0_body\">Write body here</label>" + end + + assert_dom_equal expected, output_buffer + ensure + I18n.locale = old_locale + end + + def test_label_with_locales_fallback_and_nested_attributes + old_locale, I18n.locale = I18n.locale, :label + form_for(@post, :html => { :id => 'create-post' }) do |f| + f.fields_for(:tags) do |cf| + concat cf.label(:value) + end + end + + expected = whole_form("/posts/123", "create-post" , "edit_post", :method => "put") do + "<label for=\"post_tags_attributes_0_value\">Tag</label>" + end + + assert_dom_equal expected, output_buffer + ensure + I18n.locale = old_locale + end + def test_label_with_for_attribute_as_symbol assert_dom_equal('<label for="my_for">Title</label>', label(:post, :title, nil, :for => "my_for")) end |