diff options
-rw-r--r-- | lib/redmine/i18n.rb | 2 | ||||
-rw-r--r-- | test/unit/lib/redmine/i18n_test.rb | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/redmine/i18n.rb b/lib/redmine/i18n.rb index b028e3e30..7fa88230f 100644 --- a/lib/redmine/i18n.rb +++ b/lib/redmine/i18n.rb @@ -60,7 +60,7 @@ module Redmine # Localizes the given args with user's language def lu(user, *args) - lang = user.try(:language) || Setting.default_language + lang = user.try(:language).presence || Setting.default_language ll(lang, *args) end diff --git a/test/unit/lib/redmine/i18n_test.rb b/test/unit/lib/redmine/i18n_test.rb index 0c42ccc03..90e01bf89 100644 --- a/test/unit/lib/redmine/i18n_test.rb +++ b/test/unit/lib/redmine/i18n_test.rb @@ -162,6 +162,15 @@ class Redmine::I18nTest < ActiveSupport::TestCase assert_equal "-1000,20 #{euro_sign}", number_to_currency(-1000.2) end + def test_lu_should_not_error_when_user_language_is_an_empty_string + user = User.new + user.language = '' + + assert_nothing_raised do + lu(user, :label_issue) + end + end + def test_valid_languages assert valid_languages.is_a?(Array) assert valid_languages.first.is_a?(Symbol) |