end
def favicon
- fav_path = (current_theme && current_theme.favicon?) ? current_theme.favicon_path : '/favicon.ico'
- "<link rel='shortcut icon' href='#{image_path(fav_path)}' />".html_safe
+ "<link rel='shortcut icon' href='#{favicon_path}' />".html_safe
+ end
+
+ # Returns the path to the favicon
+ def favicon_path
+ icon = (current_theme && current_theme.favicon?) ? current_theme.favicon_path : '/favicon.ico'
+ image_path(icon)
+ end
+
+ # Returns the full URL to the favicon
+ def favicon_url
+ # TODO: use #image_url introduced in Rails4
+ path = favicon_path
+ base = url_for(:controller => 'welcome', :action => 'index', :only_path => false)
+ base.sub(%r{/+$},'') + '/' + path.sub(%r{^/+},'')
end
def robot_exclusion_tag
assert_equal '<h2>Foo » Bar</h2>', title('Foo', 'Bar')
assert_equal 'Bar - Foo - Redmine', html_title
end
+
+ def test_favicon_path
+ assert_match %r{^/favicon\.ico}, favicon_path
+ end
+
+ def test_favicon_path_with_suburi
+ Redmine::Utils.relative_url_root = '/foo'
+ assert_match %r{^/foo/favicon\.ico}, favicon_path
+ ensure
+ Redmine::Utils.relative_url_root = ''
+ end
+
+ def test_favicon_url
+ assert_match %r{^http://test\.host/favicon\.ico}, favicon_url
+ end
+
+ def test_favicon_url_with_suburi
+ Redmine::Utils.relative_url_root = '/foo'
+ assert_match %r{^http://test\.host/foo/favicon\.ico}, favicon_url
+ ensure
+ Redmine::Utils.relative_url_root = ''
+ end
end