From fd33ffbbeb20e71d0312be4cb668ec8b38b6bdae Mon Sep 17 00:00:00 2001 From: Holger Just Date: Tue, 15 Feb 2022 19:46:15 +0100 Subject: [PATCH 1/3] Render all visible projects in robots.txt (including closed projects) --- app/controllers/welcome_controller.rb | 2 +- test/integration/welcome_test.rb | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/controllers/welcome_controller.rb b/app/controllers/welcome_controller.rb index a32a944a40..e526fe5b1c 100644 --- a/app/controllers/welcome_controller.rb +++ b/app/controllers/welcome_controller.rb @@ -25,7 +25,7 @@ def index end def robots - @projects = Project.all_public.active + @projects = Project.visible(User.anonymous) render :layout => false, :content_type => 'text/plain' end end diff --git a/test/integration/welcome_test.rb b/test/integration/welcome_test.rb index 4337a5a50d..ffb3e240f7 100644 --- a/test/integration/welcome_test.rb +++ b/test/integration/welcome_test.rb @@ -24,6 +24,8 @@ class WelcomeTest < Redmine::IntegrationTest :projects, :enabled_modules, :members, :member_roles, :roles def test_robots + Project.find(3).update_attribute :status, Project::STATUS_CLOSED + get '/robots.txt' assert_response :success assert_equal 'text/plain', @response.media_type @@ -36,5 +38,8 @@ def test_robots assert @response.body.match(%r{^Disallow: /login\r?$}) assert @response.body.match(%r{^Disallow: /account/register\r?$}) assert @response.body.match(%r{^Disallow: /account/lost_password\r?$}) + + # closed projects are included in the list + assert @response.body.match(%r{^Disallow: /projects/subproject1/issues\r?$}) end end -- 2.34.0