Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb')
-rw-r--r--spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb20
1 files changed, 18 insertions, 2 deletions
diff --git a/spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb b/spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb
index 4d12b49e2c0..dfd01cdf4bb 100644
--- a/spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb
+++ b/spec/lib/bulk_imports/projects/pipelines/snippets_repository_pipeline_spec.rb
@@ -135,9 +135,25 @@ RSpec.describe BulkImports::Projects::Pipelines::SnippetsRepositoryPipeline do
end
context 'when url is invalid' do
- let(:http_url_to_repo) { 'http://0.0.0.0' }
+ context 'when not a real URL' do
+ let(:http_url_to_repo) { 'http://0.0.0.0' }
- it_behaves_like 'skippable snippet'
+ it_behaves_like 'skippable snippet'
+ end
+
+ context 'when scheme is blocked' do
+ let(:http_url_to_repo) { 'file://example.com/foo/bar/snippets/42.git' }
+
+ it_behaves_like 'skippable snippet'
+
+ it 'logs the failure' do
+ pipeline.run
+
+ expect(tracker.failed?).to eq(true)
+ expect(tracker.entity.failures.first).to be_present
+ expect(tracker.entity.failures.first.exception_message).to eq('Only allowed schemes are http, https')
+ end
+ end
end
context 'when snippet is invalid' do