From 3353b85b0eae76bf36ae7c2f7b6adc1863278a8e Mon Sep 17 00:00:00 2001 From: Michael Koziarski Date: Mon, 15 Oct 2007 06:52:00 +0000 Subject: Sync country_select with ISO 3166 long names. Closes #6872 [abhay, mikong, ruben] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7904 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- .../lib/action_view/helpers/form_options_helper.rb | 97 ++- .../test/template/form_options_helper_test.rb | 772 ++++++++++++++++++++- 2 files changed, 796 insertions(+), 73 deletions(-) (limited to 'actionpack') diff --git a/actionpack/lib/action_view/helpers/form_options_helper.rb b/actionpack/lib/action_view/helpers/form_options_helper.rb index f0629ae81b..e7d375cabb 100644 --- a/actionpack/lib/action_view/helpers/form_options_helper.rb +++ b/actionpack/lib/action_view/helpers/form_options_helper.rb @@ -252,13 +252,7 @@ module ActionView country_options += "\n" end - if priority_countries && priority_countries.include?(selected) - country_options += options_for_select(COUNTRIES - priority_countries, selected) - else - country_options += options_for_select(COUNTRIES, selected) - end - - return country_options + return country_options + options_for_select(COUNTRIES, selected) end # Returns a string of option tags for pretty much any time zone in the @@ -314,50 +308,44 @@ module ActionView end # All the countries included in the country_options output. - COUNTRIES = [ "Afghanistan", "Albania", "Algeria", "American Samoa", "Andorra", "Angola", "Anguilla", - "Antarctica", "Antigua And Barbuda", "Argentina", "Armenia", "Aruba", "Australia", - "Austria", "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Belarus", - "Belgium", "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia", "Bosnia and Herzegowina", - "Botswana", "Bouvet Island", "Brazil", "British Indian Ocean Territory", - "Brunei Darussalam", "Bulgaria", "Burkina Faso", "Burma", "Burundi", "Cambodia", - "Cameroon", "Canada", "Cape Verde", "Cayman Islands", "Central African Republic", - "Chad", "Chile", "China", "Christmas Island", "Cocos (Keeling) Islands", "Colombia", - "Comoros", "Congo", "Congo, the Democratic Republic of the", "Cook Islands", - "Costa Rica", "Cote d'Ivoire", "Croatia", "Cuba", "Cyprus", "Czech Republic", "Denmark", - "Djibouti", "Dominica", "Dominican Republic", "East Timor", "Ecuador", "Egypt", - "El Salvador", "England", "Equatorial Guinea", "Eritrea", "Espana", "Estonia", - "Ethiopia", "Falkland Islands", "Faroe Islands", "Fiji", "Finland", "France", - "French Guiana", "French Polynesia", "French Southern Territories", "Gabon", "Gambia", - "Georgia", "Germany", "Ghana", "Gibraltar", "Great Britain", "Greece", "Greenland", - "Grenada", "Guadeloupe", "Guam", "Guatemala", "Guinea", "Guinea-Bissau", "Guyana", - "Haiti", "Heard and Mc Donald Islands", "Honduras", "Hong Kong", "Hungary", "Iceland", - "India", "Indonesia", "Ireland", "Israel", "Italy", "Iran", "Iraq", "Jamaica", "Japan", "Jordan", - "Kazakhstan", "Kenya", "Kiribati", "Korea, Republic of", "Korea (South)", "Kuwait", - "Kyrgyzstan", "Lao People's Democratic Republic", "Latvia", "Lebanon", "Lesotho", - "Liberia", "Liechtenstein", "Lithuania", "Luxembourg", "Macau", "Macedonia", - "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", - "Martinique", "Mauritania", "Mauritius", "Mayotte", "Mexico", - "Micronesia, Federated States of", "Moldova, Republic of", "Monaco", "Mongolia", - "Montserrat", "Morocco", "Mozambique", "Myanmar", "Namibia", "Nauru", "Nepal", - "Netherlands", "Netherlands Antilles", "New Caledonia", "New Zealand", "Nicaragua", - "Niger", "Nigeria", "Niue", "Norfolk Island", "Northern Ireland", - "Northern Mariana Islands", "Norway", "Oman", "Pakistan", "Palau", "Panama", - "Papua New Guinea", "Paraguay", "Peru", "Philippines", "Pitcairn", "Poland", - "Portugal", "Puerto Rico", "Qatar", "Reunion", "Romania", "Russia", "Rwanda", - "Saint Kitts and Nevis", "Saint Lucia", "Saint Vincent and the Grenadines", - "Samoa (Independent)", "San Marino", "Sao Tome and Principe", "Saudi Arabia", - "Scotland", "Senegal", "Serbia and Montenegro", "Seychelles", "Sierra Leone", "Singapore", - "Slovakia", "Slovenia", "Solomon Islands", "Somalia", "South Africa", - "South Georgia and the South Sandwich Islands", "South Korea", "Spain", "Sri Lanka", - "St. Helena", "St. Pierre and Miquelon", "Suriname", "Svalbard and Jan Mayen Islands", - "Swaziland", "Sweden", "Switzerland", "Taiwan", "Tajikistan", "Tanzania", "Thailand", - "Togo", "Tokelau", "Tonga", "Trinidad", "Trinidad and Tobago", "Tunisia", "Turkey", - "Turkmenistan", "Turks and Caicos Islands", "Tuvalu", "Uganda", "Ukraine", - "United Arab Emirates", "United Kingdom", "United States", - "United States Minor Outlying Islands", "Uruguay", "Uzbekistan", "Vanuatu", - "Vatican City State (Holy See)", "Venezuela", "Viet Nam", "Virgin Islands (British)", - "Virgin Islands (U.S.)", "Wales", "Wallis and Futuna Islands", "Western Sahara", - "Yemen", "Zambia", "Zimbabwe" ] unless const_defined?("COUNTRIES") + COUNTRIES = ["Afghanistan", "Aland Islands", "Albania", "Algeria", "American Samoa", "Andorra", "Angola", + "Anguilla", "Antarctica", "Antigua And Barbuda", "Argentina", "Armenia", "Aruba", "Australia", "Austria", + "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", "Belize", "Benin", + "Bermuda", "Bhutan", "Bolivia", "Bosnia and Herzegowina", "Botswana", "Bouvet Island", "Brazil", + "British Indian Ocean Territory", "Brunei Darussalam", "Bulgaria", "Burkina Faso", "Burundi", "Cambodia", + "Cameroon", "Canada", "Cape Verde", "Cayman Islands", "Central African Republic", "Chad", "Chile", "China", + "Christmas Island", "Cocos (Keeling) Islands", "Colombia", "Comoros", "Congo", + "Congo, the Democratic Republic of the", "Cook Islands", "Costa Rica", "Cote d'Ivoire", "Croatia", "Cuba", + "Cyprus", "Czech Republic", "Denmark", "Djibouti", "Dominica", "Dominican Republic", "Ecuador", "Egypt", + "El Salvador", "Equatorial Guinea", "Eritrea", "Estonia", "Ethiopia", "Falkland Islands (Malvinas)", + "Faroe Islands", "Fiji", "Finland", "France", "French Guiana", "French Polynesia", + "French Southern Territories", "Gabon", "Gambia", "Georgia", "Germany", "Ghana", "Gibraltar", + "Great Britain", "Greece", "Greenland", "Grenada", "Guadeloupe", "Guam", "Guatemala", "Guernsey", "Guinea", + "Guinea-Bissau", "Guyana", "Haiti", "Heard and McDonald Islands", "Holy See (Vatican City State)", + "Honduras", "Hong Kong", "Hungary", "Iceland", "India", "Indonesia", "Iran, Islamic Republic of", "Iraq", + "Ireland", "Isle of Man", "Israel", "Italy", "Jamaica", "Japan", "Jersey", "Jordan", "Kazakhstan", "Kenya", + "Kiribati", "Korea, Democratic People's Republic of", "Korea, Republic of", "Kuwait", "Kyrgyzstan", + "Lao People's Democratic Republic", "Latvia", "Lebanon", "Lesotho", "Liberia", "Libyan Arab Jamahiriya", + "Liechtenstein", "Lithuania", "Luxembourg", "Macao", "Macedonia, The Former Yugoslav Republic Of", + "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", "Martinique", + "Mauritania", "Mauritius", "Mayotte", "Mexico", "Micronesia, Federated States of", "Moldova, Republic of", + "Monaco", "Mongolia", "Montenegro", "Montserrat", "Morocco", "Mozambique", "Myanmar", "Namibia", "Nauru", + "Nepal", "Netherlands", "Netherlands Antilles", "New Caledonia", "New Zealand", "Nicaragua", "Niger", + "Nigeria", "Niue", "Norfolk Island", "Northern Mariana Islands", "Norway", "Oman", "Pakistan", "Palau", + "Palestinian Territory, Occupied", "Panama", "Papua New Guinea", "Paraguay", "Peru", "Philippines", + "Pitcairn", "Poland", "Portugal", "Puerto Rico", "Qatar", "Reunion", "Romania", "Russian Federation", + "Rwanda", "Saint Barthelemy", "Saint Helena", "Saint Kitts and Nevis", "Saint Lucia", + "Saint Pierre and Miquelon", "Saint Vincent and the Grenadines", "Samoa", "San Marino", + "Sao Tome and Principe", "Saudi Arabia", "Senegal", "Serbia", "Seychelles", "Sierra Leone", "Singapore", + "Slovakia", "Slovenia", "Solomon Islands", "Somalia", "South Africa", + "South Georgia and the South Sandwich Islands", "Spain", "Sri Lanka", "Sudan", "Suriname", + "Svalbard and Jan Mayen", "Swaziland", "Sweden", "Switzerland", "Syrian Arab Republic", + "Taiwan, Province of China", "Tajikistan", "Tanzania, United Republic of", "Thailand", "Timor-Leste", + "Togo", "Tokelau", "Tonga", "Trinidad and Tobago", "Tunisia", "Turkey", "Turkmenistan", + "Turks and Caicos Islands", "Tuvalu", "Uganda", "Ukraine", "United Arab Emirates", "United Kingdom", + "United States", "United States Minor Outlying Islands", "Uruguay", "Uzbekistan", "Vanuatu", "Venezuela", + "Viet Nam", "Virgin Islands, British", "Virgin Islands, U.S.", "Wallis and Futuna", "Western Sahara", + "Yemen", "Zambia", "Zimbabwe"] unless const_defined?("COUNTRIES") end class InstanceTag #:nodoc: @@ -384,7 +372,12 @@ module ActionView html_options = html_options.stringify_keys add_default_name_and_id(html_options) value = value(object) - content_tag("select", add_options(country_options_for_select(value, priority_countries), options, value), html_options) + content_tag("select", + add_options( + country_options_for_select(value, priority_countries), + options, value + ), html_options + ) end def to_time_zone_select_tag(priority_zones, options, html_options) diff --git a/actionpack/test/template/form_options_helper_test.rb b/actionpack/test/template/form_options_helper_test.rb index 9433a22cc1..e34e36f4e3 100644 --- a/actionpack/test/template/form_options_helper_test.rb +++ b/actionpack/test/template/form_options_helper_test.rb @@ -407,37 +407,767 @@ class FormOptionsHelperTest < Test::Unit::TestCase def test_country_select @post = Post.new @post.origin = "Denmark" - assert_dom_equal( - "", - country_select("post", "origin") - ) + expected_select = <<-COUNTRIES + +COUNTRIES + assert_dom_equal(expected_select[0..-2], country_select("post", "origin")) end def test_country_select_with_priority_countries @post = Post.new @post.origin = "Denmark" - assert_dom_equal( - "", - country_select("post", "origin", ["New Zealand", "Nicaragua"]) - ) + expected_select = <<-COUNTRIES + +COUNTRIES + assert_dom_equal(expected_select[0..-2], country_select("post", "origin", ["New Zealand", "Nicaragua"])) end def test_country_select_with_selected_priority_country @post = Post.new @post.origin = "New Zealand" - assert_dom_equal( - "", - country_select("post", "origin", ["New Zealand", "Nicaragua"]) - ) + expected_select = <<-COUNTRIES + +COUNTRIES + assert_dom_equal(expected_select[0..-2], country_select("post", "origin", ["New Zealand", "Nicaragua"])) end def test_time_zone_select -- cgit v1.2.3