diff options
author | Robert Speicher <rspeicher@gmail.com> | 2021-01-20 13:34:23 -0600 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2021-01-20 13:34:23 -0600 |
commit | 6438df3a1e0fb944485cebf07976160184697d72 (patch) | |
tree | 00b09bfd170e77ae9391b1a2f5a93ef6839f2597 /spec/tasks/gitlab/git_rake_spec.rb | |
parent | 42bcd54d971da7ef2854b896a7b34f4ef8601067 (diff) | |
download | gitlab-ce-6438df3a1e0fb944485cebf07976160184697d72.tar.gz |
Add latest changes from gitlab-org/gitlab@13-8-stable-eev13.8.0-rc42
Diffstat (limited to 'spec/tasks/gitlab/git_rake_spec.rb')
-rw-r--r-- | spec/tasks/gitlab/git_rake_spec.rb | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/spec/tasks/gitlab/git_rake_spec.rb b/spec/tasks/gitlab/git_rake_spec.rb index 4bc1b460d9b..4d89b126c9e 100644 --- a/spec/tasks/gitlab/git_rake_spec.rb +++ b/spec/tasks/gitlab/git_rake_spec.rb @@ -19,4 +19,38 @@ RSpec.describe 'gitlab:git rake tasks' do expect { run_rake_task('gitlab:git:fsck') }.to output(/Performed integrity check for/).to_stdout end end + + describe 'checksum_projects' do + it 'outputs the checksum for a repo' do + expected = /#{project.id},#{project.repository.checksum}/ + + expect { run_rake_task('gitlab:git:checksum_projects') }.to output(expected).to_stdout + end + + it 'outputs blank checksum for no repo' do + no_repo = create(:project) + + expected = /#{no_repo.id},$/ + + expect { run_rake_task('gitlab:git:checksum_projects') }.to output(expected).to_stdout + end + + it 'outputs zeroes for empty repo' do + empty_repo = create(:project, :empty_repo) + + expected = /#{empty_repo.id},0000000000000000000000000000000000000000/ + + expect { run_rake_task('gitlab:git:checksum_projects') }.to output(expected).to_stdout + end + + it 'outputs errors' do + allow_next_found_instance_of(Project) do |project| + allow(project).to receive(:repo_exists?).and_raise('foo') + end + + expected = /#{project.id},Ignored error: foo/ + + expect { run_rake_task('gitlab:git:checksum_projects') }.to output(expected).to_stdout + end + end end |