diff options
author | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-04-18 09:44:22 +0200 |
---|---|---|
committer | Grzegorz Bizon <grzesiek.bizon@gmail.com> | 2016-04-27 14:16:01 +0200 |
commit | bdb86ea6cfe16cd3c1e8197744fa3328ba93ecf2 (patch) | |
tree | e3f7cce5af46519cb0544e455fdc50ca0357bf94 /spec/models | |
parent | c01ff1f54b55a60f7c7473d0d8a429d5cf9c1609 (diff) | |
download | gitlab-ce-bdb86ea6cfe16cd3c1e8197744fa3328ba93ecf2.tar.gz |
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/models')
-rw-r--r-- | spec/models/concerns/statuseable_spec.rb | 26 |
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)] |