diff options
author | Peter Marko <peter.marko@siemens.com> | 2019-05-29 16:09:41 +0200 |
---|---|---|
committer | Peter Marko <peter.marko@siemens.com> | 2019-05-29 16:15:02 +0200 |
commit | 8a0226d4be3b11d2362712b08e0c57d0a7e27c4b (patch) | |
tree | 3609f4a5822494725aa6b21aded4ed1ddab089b7 /spec/models | |
parent | 40490cc4922fedbf4512109429cdc2c5aed65ded (diff) | |
download | gitlab-ce-8a0226d4be3b11d2362712b08e0c57d0a7e27c4b.tar.gz |
Add spec to verify statistics without repositories
Diffstat (limited to 'spec/models')
-rw-r--r-- | spec/models/project_statistics_spec.rb | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/spec/models/project_statistics_spec.rb b/spec/models/project_statistics_spec.rb index af429544d84..f985c114d4b 100644 --- a/spec/models/project_statistics_spec.rb +++ b/spec/models/project_statistics_spec.rb @@ -83,6 +83,44 @@ describe ProjectStatistics do expect(statistics).not_to have_received(:update_wiki_size) end end + + context 'without repositories' do + it 'does not crash' do + expect(project.repository.exists?).to be_falsey + expect(project.wiki.repository.exists?).to be_falsey + + statistics.refresh! + + expect(statistics).to have_received(:update_commit_count) + expect(statistics).to have_received(:update_repository_size) + expect(statistics).to have_received(:update_wiki_size) + expect(statistics.repository_size).to eq(0) + expect(statistics.commit_count).to eq(0) + expect(statistics.wiki_size).to eq(0) + end + end + + context 'with deleted repositories' do + let(:project) { create(:project, :repository, :wiki_repo) } + + before do + Gitlab::GitalyClient::StorageSettings.allow_disk_access do + FileUtils.rm_rf(project.repository.path) + FileUtils.rm_rf(project.wiki.repository.path) + end + end + + it 'does not crash' do + statistics.refresh! + + expect(statistics).to have_received(:update_commit_count) + expect(statistics).to have_received(:update_repository_size) + expect(statistics).to have_received(:update_wiki_size) + expect(statistics.repository_size).to eq(0) + expect(statistics.commit_count).to eq(0) + expect(statistics.wiki_size).to eq(0) + end + end end describe '#update_commit_count' do |