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
path: root/spec
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-04-18 10:44:22 +0300
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-04-27 15:16:01 +0300
commitbdb86ea6cfe16cd3c1e8197744fa3328ba93ecf2 (patch)
treee3f7cce5af46519cb0544e455fdc50ca0357bf94 /spec
parentc01ff1f54b55a60f7c7473d0d8a429d5cf9c1609 (diff)
Render canceled status if any of the jobs canceled
This status will be returned only when there are no failed jobs that are not allowed to fail.
Diffstat (limited to 'spec')
-rw-r--r--spec/models/concerns/statuseable_spec.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/spec/models/concerns/statuseable_spec.rb b/spec/models/concerns/statuseable_spec.rb
index dacbd3034c0..8e0a2a2cbde 100644
--- a/spec/models/concerns/statuseable_spec.rb
+++ b/spec/models/concerns/statuseable_spec.rb
@@ -61,9 +61,35 @@ describe Statuseable do
let(:statuses) do
[create(type, status: :success), create(type, status: :canceled)]
end
+
+ it { is_expected.to eq 'canceled' }
+ end
+
+ context 'one failed and one canceled' do
+ let(:statuses) do
+ [create(type, status: :failed), create(type, status: :canceled)]
+ end
+
it { is_expected.to eq 'failed' }
end
+ context 'one failed but allowed to fail and one canceled' do
+ let(:statuses) do
+ [create(type, status: :failed, allow_failure: true),
+ create(type, status: :canceled)]
+ end
+
+ it { is_expected.to eq 'canceled' }
+ end
+
+ context 'one running one canceled' do
+ let(:statuses) do
+ [create(type, status: :running), create(type, status: :canceled)]
+ end
+
+ it { is_expected.to eq 'running' }
+ end
+
context 'all canceled' do
let(:statuses) do
[create(type, status: :canceled), create(type, status: :canceled)]