Merge branch 'refactor-pipeline-errors_message-ce' into 'master'

CE Port: Refactor pipeline errors_message

See merge request gitlab-org/gitlab-ce!30116
This commit is contained in:
Kamil Trzciński 2019-07-04 13:04:29 +00:00
commit 56af0bfd9e
3 changed files with 29 additions and 1 deletions

View File

@ -790,6 +790,10 @@ module Ci
stages.find_by!(name: name)
end
def error_messages
errors ? errors.full_messages.to_sentence : ""
end
private
def ci_yaml_from_repo

View File

@ -65,7 +65,7 @@ module Ci
def execute!(*args, &block)
execute(*args, &block).tap do |pipeline|
unless pipeline.persisted?
raise CreateError, pipeline.errors.full_messages.join(',')
raise CreateError, pipeline.error_messages
end
end
end

View File

@ -2998,4 +2998,28 @@ describe Ci::Pipeline, :mailer do
end
end
end
describe '#error_messages' do
subject { pipeline.error_messages }
before do
pipeline.valid?
end
context 'when pipeline has errors' do
let(:pipeline) { build(:ci_pipeline, sha: nil, ref: nil) }
it 'returns the full error messages' do
is_expected.to eq("Sha can't be blank and Ref can't be blank")
end
end
context 'when pipeline does not have errors' do
let(:pipeline) { build(:ci_pipeline) }
it 'returns empty string' do
is_expected.to be_empty
end
end
end
end