summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb')
-rw-r--r--spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb26
1 files changed, 25 insertions, 1 deletions
diff --git a/spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb b/spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb
index 43c4b164b2d..fe934cadedd 100644
--- a/spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb
+++ b/spec/lib/gitlab/import_export/snippet_repo_restorer_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-describe Gitlab::ImportExport::SnippetRepoRestorer do
+RSpec.describe Gitlab::ImportExport::SnippetRepoRestorer do
let_it_be(:user) { create(:user) }
let(:project) { create(:project, namespace: user.namespace) }
@@ -35,6 +35,12 @@ describe Gitlab::ImportExport::SnippetRepoRestorer do
end
end
+ it 'does not call snippet update statistics service' do
+ expect(Snippets::UpdateStatisticsService).not_to receive(:new).with(snippet)
+
+ restorer.restore
+ end
+
context 'when the repository creation fails' do
it 'returns false' do
allow_any_instance_of(Gitlab::BackgroundMigration::BackfillSnippetRepositories).to receive(:perform_by_ids).and_return(nil)
@@ -66,6 +72,10 @@ describe Gitlab::ImportExport::SnippetRepoRestorer do
before do
expect(exporter.save).to be_truthy
+
+ allow_next_instance_of(Snippets::RepositoryValidationService) do |instance|
+ allow(instance).to receive(:execute).and_return(ServiceResponse.success)
+ end
end
context 'when it is valid' do
@@ -115,5 +125,19 @@ describe Gitlab::ImportExport::SnippetRepoRestorer do
end
end
end
+
+ it 'refreshes snippet statistics' do
+ expect(snippet.statistics.commit_count).to be_zero
+ expect(snippet.statistics.file_count).to be_zero
+ expect(snippet.statistics.repository_size).to be_zero
+
+ expect(Snippets::UpdateStatisticsService).to receive(:new).with(snippet).and_call_original
+
+ restorer.restore
+
+ expect(snippet.statistics.commit_count).not_to be_zero
+ expect(snippet.statistics.file_count).not_to be_zero
+ expect(snippet.statistics.repository_size).not_to be_zero
+ end
end
end