From 682f0231ff4c4fac35ad3740a9aeb562e11300a5 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sun, 12 Jan 2014 10:03:59 +0000 Subject: [PATCH] Adds favicon to ATOM feeds (#14309). git-svn-id: http://svn.redmine.org/redmine/trunk@12662 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/views/common/feed.atom.builder | 1 + app/views/journals/index.builder | 1 + test/integration/feeds_test.rb | 31 ++++++++++++++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 test/integration/feeds_test.rb diff --git a/app/views/common/feed.atom.builder b/app/views/common/feed.atom.builder index 70dacc75a..b4c830ee3 100644 --- a/app/views/common/feed.atom.builder +++ b/app/views/common/feed.atom.builder @@ -4,6 +4,7 @@ xml.feed "xmlns" => "http://www.w3.org/2005/Atom" do xml.link "rel" => "self", "href" => url_for(params.merge(:only_path => false)) xml.link "rel" => "alternate", "href" => url_for(params.merge(:only_path => false, :format => nil, :key => nil)) xml.id url_for(:controller => 'welcome', :only_path => false) + xml.icon favicon_url xml.updated((@items.first ? @items.first.event_datetime : Time.now).xmlschema) xml.author { xml.name "#{Setting.app_title}" } xml.generator(:uri => Redmine::Info.url) { xml.text! Redmine::Info.app_name; } diff --git a/app/views/journals/index.builder b/app/views/journals/index.builder index a81ff98a8..11b73f53c 100644 --- a/app/views/journals/index.builder +++ b/app/views/journals/index.builder @@ -4,6 +4,7 @@ xml.feed "xmlns" => "http://www.w3.org/2005/Atom" do xml.link "rel" => "self", "href" => url_for(:format => 'atom', :key => User.current.rss_key, :only_path => false) xml.link "rel" => "alternate", "href" => home_url(:only_path => false) xml.id url_for(:controller => 'welcome', :only_path => false) + xml.icon favicon_url xml.updated((@journals.first ? @journals.first.event_datetime : Time.now).xmlschema) xml.author { xml.name "#{Setting.app_title}" } @journals.each do |change| diff --git a/test/integration/feeds_test.rb b/test/integration/feeds_test.rb new file mode 100644 index 000000000..af5bf4608 --- /dev/null +++ b/test/integration/feeds_test.rb @@ -0,0 +1,31 @@ +# Redmine - project management software +# Copyright (C) 2006-2013 Jean-Philippe Lang +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +require File.expand_path('../../test_helper', __FILE__) + +class FeedsTest < ActionController::IntegrationTest + fixtures :projects, :trackers, :issue_statuses, :issues, + :enumerations, :users, :issue_categories, + :projects_trackers, :enabled_modules, + :roles, :member_roles, :members + + def test_feeds_should_include_icon_tag + get '/projects.atom' + assert_response :success + assert_select 'feed>icon', :text => %r{^http://www.example.com/favicon.ico} + end +end -- 2.39.5