diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-11 00:08:12 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-11 00:08:12 +0300 |
commit | ddfa6a1f19f1c6847d30314858f1d0ad21de13f9 (patch) | |
tree | 715fd181e594d7c6339d90eb8daaa45c962f2565 /spec/controllers | |
parent | f27a1b0faf16a83ba9c3f71f660262e368f4509a (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/controllers')
-rw-r--r-- | spec/controllers/projects_controller_spec.rb | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/spec/controllers/projects_controller_spec.rb b/spec/controllers/projects_controller_spec.rb index b711cdcf47c..c0c5dcfe21d 100644 --- a/spec/controllers/projects_controller_spec.rb +++ b/spec/controllers/projects_controller_spec.rb @@ -629,10 +629,21 @@ RSpec.describe ProjectsController do describe '#housekeeping' do let_it_be(:group) { create(:group) } - let_it_be(:project) { create(:project, group: group) } + let(:housekeeping_service_dbl) { instance_double(Repositories::HousekeepingService) } + let(:params) do + { + namespace_id: project.namespace.path, + id: project.path, + prune: prune + } + end + let(:prune) { nil } + let_it_be(:project) { create(:project, group: group) } let(:housekeeping) { Repositories::HousekeepingService.new(project) } + subject { post :housekeeping, params: params } + context 'when authenticated as owner' do before do group.add_owner(user) @@ -652,6 +663,18 @@ RSpec.describe ProjectsController do expect(response).to have_gitlab_http_status(:found) end + + context 'and requesting prune' do + let(:prune) { true } + + it 'enqueues pruning' do + allow(Repositories::HousekeepingService).to receive(:new).with(project, :prune).and_return(housekeeping_service_dbl) + expect(housekeeping_service_dbl).to receive(:execute) + + subject + expect(response).to have_gitlab_http_status(:found) + end + end end context 'when authenticated as developer' do |