From 5a960d2568b5c2f69c31379045a224489a5ac3d1 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Tue, 9 May 2006 05:19:32 +0000 Subject: [PATCH] Excise ingrown code from FormOptionsHelper#options_for_select. Closes #5008. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4331 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/CHANGELOG | 2 ++ actionpack/lib/action_view/helpers/form_options_helper.rb | 2 -- actionpack/test/template/form_options_helper_test.rb | 4 ++++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index d4ff4b0373..33e2839e69 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Excise ingrown code from FormOptionsHelper#options_for_select. #5008 [anonymous] + * Small fix in routing to allow dynamic routes (broken after [4242]) [Rick] map.connect '*path', :controller => 'files', :action => 'show' diff --git a/actionpack/lib/action_view/helpers/form_options_helper.rb b/actionpack/lib/action_view/helpers/form_options_helper.rb index 4c830afb02..12a5f7f0f1 100644 --- a/actionpack/lib/action_view/helpers/form_options_helper.rb +++ b/actionpack/lib/action_view/helpers/form_options_helper.rb @@ -113,7 +113,6 @@ def options_for_select(container, selected = nil) options_for_select = container.inject([]) do |options, element| if !element.is_a?(String) and element.respond_to?(:first) and element.respond_to?(:last) - is_selected = ( (selected.respond_to?(:include?) ? selected.include?(element.last) : element.last == selected) ) is_selected = ( (selected.respond_to?(:include?) && !selected.is_a?(String) ? selected.include?(element.last) : element.last == selected) ) if is_selected options << "" @@ -121,7 +120,6 @@ def options_for_select(container, selected = nil) options << "" end else - is_selected = ( (selected.respond_to?(:include?) ? selected.include?(element) : element == selected) ) is_selected = ( (selected.respond_to?(:include?) && !selected.is_a?(String) ? selected.include?(element) : element == selected) ) options << ((is_selected) ? "" : "") end diff --git a/actionpack/test/template/form_options_helper_test.rb b/actionpack/test/template/form_options_helper_test.rb index f468b69c7e..ad293417f5 100644 --- a/actionpack/test/template/form_options_helper_test.rb +++ b/actionpack/test/template/form_options_helper_test.rb @@ -103,6 +103,10 @@ def test_array_options_for_string_include_in_other_string_bug_fix "\n", options_for_select([ "ruby", "rubyonrails" ], "ruby") ) + assert_dom_equal( + %(\n\n), + options_for_select([ "ruby", "rubyonrails", nil ], "ruby") + ) end def test_hash_options_for_select -- GitLab