summaryrefslogtreecommitdiff
path: root/spec/models/ci
diff options
context:
space:
mode:
authordrew cimino <dcimino@gitlab.com>2019-04-04 19:41:54 +0100
committerdrew cimino <dcimino@gitlab.com>2019-04-12 16:53:21 +0100
commit34243489af3e52ca87d6f1bc578bd9ba4e9d565e (patch)
tree478c5ded9c01a98b8677503d2e41f5daa3ae7e5a /spec/models/ci
parentde44f3e176a1891238f5c79ef5203ab06cbe6927 (diff)
downloadgitlab-ce-34243489af3e52ca87d6f1bc578bd9ba4e9d565e.tar.gz
Don't render artifact download links on the project tags page for builds with expired artifacts
Diffstat (limited to 'spec/models/ci')
-rw-r--r--spec/models/ci/pipeline_spec.rb15
1 files changed, 8 insertions, 7 deletions
diff --git a/spec/models/ci/pipeline_spec.rb b/spec/models/ci/pipeline_spec.rb
index f3e78630c1b..2b6b12650af 100644
--- a/spec/models/ci/pipeline_spec.rb
+++ b/spec/models/ci/pipeline_spec.rb
@@ -2705,18 +2705,19 @@ describe Ci::Pipeline, :mailer do
end
describe '#latest_builds_with_artifacts' do
- let!(:pipeline) { create(:ci_pipeline, :success) }
-
- let!(:build) do
- create(:ci_build, :success, :artifacts, pipeline: pipeline)
- end
+ let!(:fresh_build) { create(:ci_build, :success, :artifacts, pipeline: pipeline) }
+ let!(:stale_build) { create(:ci_build, :success, :expired, :artifacts, pipeline: pipeline) }
it 'returns an Array' do
expect(pipeline.latest_builds_with_artifacts).to be_an_instance_of(Array)
end
- it 'returns the latest builds' do
- expect(pipeline.latest_builds_with_artifacts).to eq([build])
+ it 'returns the latest builds with non-expired artifacts' do
+ expect(pipeline.latest_builds_with_artifacts).to contain_exactly(fresh_build)
+ end
+
+ it 'does not return builds with expired artifacts' do
+ expect(pipeline.latest_builds_with_artifacts).not_to include(stale_build)
end
it 'memoizes the returned relation' do