@@ -93,7 +93,7 module Redmine | |||
|
93 | 93 | # The result is cached to prevent from loading all translations files |
|
94 | 94 | # unless :cache => false option is given |
|
95 | 95 | def languages_options(options={}) |
|
96 | if options[:cache] == false | |
|
96 | options = if options[:cache] == false | |
|
97 | 97 | valid_languages. |
|
98 | 98 | select {|locale| ::I18n.exists?(:general_lang_name, locale)}. |
|
99 | 99 | map {|lang| [ll(lang.to_s, :general_lang_name), lang.to_s]}. |
@@ -103,6 +103,7 module Redmine | |||
|
103 | 103 | languages_options :cache => false |
|
104 | 104 | end |
|
105 | 105 | end |
|
106 | options.map {|name, lang| [name.force_encoding("UTF-8"), lang.force_encoding("UTF-8")]} | |
|
106 | 107 | end |
|
107 | 108 | |
|
108 | 109 | def find_language(lang) |
@@ -199,6 +199,11 class Redmine::I18nTest < ActiveSupport::TestCase | |||
|
199 | 199 | assert_include [ja, "ja"], options |
|
200 | 200 | end |
|
201 | 201 | |
|
202 | def test_languages_options_should_return_strings_with_utf8_encoding | |
|
203 | strings = languages_options.flatten | |
|
204 | assert_equal ["UTF-8"], strings.map(&:encoding).uniq.map(&:name).sort | |
|
205 | end | |
|
206 | ||
|
202 | 207 | def test_languages_options_should_ignore_locales_without_general_lang_name_key |
|
203 | 208 | stubs(:valid_languages).returns([:en, :foo]) |
|
204 | 209 | assert_equal [["English", "en"]], languages_options(:cache => false) |
General Comments 0
You need to be logged in to leave comments.
Login now