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/support/shared_examples/serializers/pipeline_artifacts_shared_example.rb')
-rw-r--r--spec/support/shared_examples/serializers/pipeline_artifacts_shared_example.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/support/shared_examples/serializers/pipeline_artifacts_shared_example.rb b/spec/support/shared_examples/serializers/pipeline_artifacts_shared_example.rb
new file mode 100644
index 00000000000..d5ffd5e7510
--- /dev/null
+++ b/spec/support/shared_examples/serializers/pipeline_artifacts_shared_example.rb
@@ -0,0 +1,21 @@
+# frozen_string_literal: true
+RSpec.shared_examples 'public artifacts' do
+ let_it_be(:project) { create(:project, :public) }
+ let(:pipeline) { create(:ci_empty_pipeline, status: :success, project: project) }
+
+ context 'that has artifacts' do
+ let!(:build) { create(:ci_build, :success, :artifacts, pipeline: pipeline) }
+
+ it 'contains information about artifacts' do
+ expect(subject[:details][:artifacts].length).to eq(1)
+ end
+ end
+
+ context 'that has non public artifacts' do
+ let!(:build) { create(:ci_build, :success, :artifacts, :non_public_artifacts, pipeline: pipeline) }
+
+ it 'does not contain information about artifacts' do
+ expect(subject[:details][:artifacts].length).to eq(0)
+ end
+ end
+end