diff options
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.rb | 21 |
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 |