Set a default CI/CD status when it is not known
This commit is contained in:
parent
78a0d27e98
commit
37881ebb75
|
@ -17,6 +17,10 @@ module Ci
|
|||
validates :pipeline, presence: true, unless: :importing?
|
||||
validates :name, presence: true, unless: :importing?
|
||||
|
||||
after_initialize do |stage|
|
||||
self.status = DEFAULT_STATUS if self.status.nil?
|
||||
end
|
||||
|
||||
state_machine :status, initial: :created do
|
||||
event :enqueue do
|
||||
transition created: :pending
|
||||
|
|
|
@ -38,6 +38,17 @@ describe Ci::Stage, :models do
|
|||
expect(stage.status).to eq 'success'
|
||||
end
|
||||
end
|
||||
|
||||
context 'when stage status is not defined' do
|
||||
before do
|
||||
stage.update_column(:status, nil)
|
||||
end
|
||||
|
||||
it 'sets the default value' do
|
||||
expect(described_class.find(stage.id).status)
|
||||
.to eq 'created'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'update_status' do
|
||||
|
|
Loading…
Reference in New Issue