diff --git a/lib/redmine/info.rb b/lib/redmine/info.rb index 60d682c77..1933a1cda 100644 --- a/lib/redmine/info.rb +++ b/lib/redmine/info.rb @@ -20,16 +20,13 @@ module Redmine ["Mailer delivery", ActionMailer::Base.delivery_method] ].map {|info| " %-30s %s" % info}.join("\n") + "\n" - theme = Setting.ui_theme.blank? ? 'Default' : Setting.ui_theme.capitalize - unless Setting.ui_theme.blank? - theme_js = (if Redmine::Themes.theme(Setting.ui_theme).javascripts.include?('theme') - ' (includes JavaScript)' - else - '' - end - ) + theme_string = '' + theme_string += (Setting.ui_theme.blank? ? 'Default' : Setting.ui_theme.capitalize) + unless Setting.ui_theme.blank? || + Redmine::Themes.theme(Setting.ui_theme).nil? || + !Redmine::Themes.theme(Setting.ui_theme).javascripts.include?('theme') + theme_string += ' (includes JavaScript)' end - theme_string = (theme + theme_js.to_s).to_s s << "Redmine settings:\n" s << [ diff --git a/test/unit/lib/redmine/info_test.rb b/test/unit/lib/redmine/info_test.rb index 8b7016cd8..d83c60639 100644 --- a/test/unit/lib/redmine/info_test.rb +++ b/test/unit/lib/redmine/info_test.rb @@ -26,4 +26,11 @@ class Redmine::InfoTest < ActiveSupport::TestCase assert_kind_of String, env assert_match 'Redmine version', env end + + def test_theme_with_invalid_theme_setting + Setting.ui_theme = 'foo' + env = Redmine::Info.environment + + assert_match 'Redmine theme', env + end end