summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorLin Jen-Shin <godfat@godfat.org>2016-10-17 15:45:39 +0800
committerLin Jen-Shin <godfat@godfat.org>2016-10-17 15:52:10 +0800
commit0ea7f32afe9ff806f912a25efb4e967ee5da1e10 (patch)
treef3b1e0760042e1cc7f49ad50fd6016ebe8f9da86 /spec
parentcb8654e85650ba6107031cc978d882f4b2f272cf (diff)
downloadgitlab-ce-0ea7f32afe9ff806f912a25efb4e967ee5da1e10.tar.gz
Make cancelled pipelines being able to retry
Closes #23326
Diffstat (limited to 'spec')
-rw-r--r--spec/models/ci/pipeline_spec.rb24
1 files changed, 19 insertions, 5 deletions
diff --git a/spec/models/ci/pipeline_spec.rb b/spec/models/ci/pipeline_spec.rb
index 550a890797e..4e0ce10603d 100644
--- a/spec/models/ci/pipeline_spec.rb
+++ b/spec/models/ci/pipeline_spec.rb
@@ -88,24 +88,38 @@ describe Ci::Pipeline, models: true do
context 'no failed builds' do
before do
- FactoryGirl.create :ci_build, name: "rspec", pipeline: pipeline, status: 'success'
+ create_build('rspec', 'success')
end
- it 'be not retryable' do
+ it 'is not retryable' do
is_expected.to be_falsey
end
+
+ context 'one canceled job' do
+ before do
+ create_build('rubocop', 'canceled')
+ end
+
+ it 'is retryable' do
+ is_expected.to be_truthy
+ end
+ end
end
context 'with failed builds' do
before do
- FactoryGirl.create :ci_build, name: "rspec", pipeline: pipeline, status: 'running'
- FactoryGirl.create :ci_build, name: "rubocop", pipeline: pipeline, status: 'failed'
+ create_build('rspec', 'running')
+ create_build('rubocop', 'failed')
end
- it 'be retryable' do
+ it 'is retryable' do
is_expected.to be_truthy
end
end
+
+ def create_build(name, status)
+ create(:ci_build, name: name, status: status, pipeline: pipeline)
+ end
end
describe '#stages' do