diff options
| author | Tiago Botelho <tiagonbotelho@hotmail.com> | 2017-07-25 10:09:21 +0100 | 
|---|---|---|
| committer | Tiago Botelho <tiagonbotelho@hotmail.com> | 2017-07-25 17:59:47 +0100 | 
| commit | 22d53f06076e52165af3ba04d0b703bed20cfb97 (patch) | |
| tree | 90f9a9a241452023e72d6f85e3d8abb0da5a9809 | |
| parent | ea6dfcad9fdb2c673c1074c6d99ff1cca42d680a (diff) | |
| download | gitlab-ce-22d53f06076e52165af3ba04d0b703bed20cfb97.tar.gz | |
Fixes 500 error caused by pending delete projects in admin dashboard35453-pending-delete-projects-error-in-admin-dashboard-fix
3 files changed, 26 insertions, 1 deletions
| diff --git a/app/controllers/admin/dashboard_controller.rb b/app/controllers/admin/dashboard_controller.rb index 8360ce08bdc..05e749c00c0 100644 --- a/app/controllers/admin/dashboard_controller.rb +++ b/app/controllers/admin/dashboard_controller.rb @@ -1,6 +1,6 @@  class Admin::DashboardController < Admin::ApplicationController    def index -    @projects = Project.with_route.limit(10) +    @projects = Project.without_deleted.with_route.limit(10)      @users = User.limit(10)      @groups = Group.with_route.limit(10)    end diff --git a/changelogs/unreleased/35453-pending-delete-projects-error-in-admin-dashboard-fix.yml b/changelogs/unreleased/35453-pending-delete-projects-error-in-admin-dashboard-fix.yml new file mode 100644 index 00000000000..fa906accbb8 --- /dev/null +++ b/changelogs/unreleased/35453-pending-delete-projects-error-in-admin-dashboard-fix.yml @@ -0,0 +1,4 @@ +--- +title: Fixes 500 error caused by pending delete projects in admin dashboard +merge_request: 13067 +author: diff --git a/spec/controllers/admin/dashboard_controller_spec.rb b/spec/controllers/admin/dashboard_controller_spec.rb new file mode 100644 index 00000000000..6eb9f7867d5 --- /dev/null +++ b/spec/controllers/admin/dashboard_controller_spec.rb @@ -0,0 +1,21 @@ +require 'spec_helper' + +describe Admin::DashboardController do +  describe '#index' do +    context 'with pending_delete projects' do +      render_views + +      it 'does not retrieve projects that are pending deletion' do +        sign_in(create(:admin)) + +        project = create(:project) +        pending_delete_project = create(:project, pending_delete: true) + +        get :index + +        expect(response.body).to match(project.name) +        expect(response.body).not_to match(pending_delete_project.name) +      end +    end +  end +end | 
