diff options
author | Douwe Maan <douwe@gitlab.com> | 2019-01-02 18:50:32 +0300 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2019-01-02 18:50:32 +0300 |
commit | ca6fbe8a79431aa52f23a500c2be3f8545942ec1 (patch) | |
tree | 1a36fd045121a3a3400943cc3fc707e6f2388dca /spec/services | |
parent | 28cffb9f41836a84d3323e640fe31f92f37bccd9 (diff) | |
parent | ba781484c7b1bea2829f3429990a7cf39bb37ff8 (diff) |
Merge branch '18667-handle-push-opts' into 'master'
Handle 'git push -o ci.skip'
Closes #18667
See merge request gitlab-org/gitlab-ce!15643
Diffstat (limited to 'spec/services')
-rw-r--r-- | spec/services/ci/create_pipeline_service_spec.rb | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/spec/services/ci/create_pipeline_service_spec.rb b/spec/services/ci/create_pipeline_service_spec.rb index 9fc2cc8b7d6..87b60387c52 100644 --- a/spec/services/ci/create_pipeline_service_spec.rb +++ b/spec/services/ci/create_pipeline_service_spec.rb @@ -19,12 +19,14 @@ describe Ci::CreatePipelineService do ref: ref_name, trigger_request: nil, variables_attributes: nil, - merge_request: nil) + merge_request: nil, + push_options: nil) params = { ref: ref, before: '00000000', after: after, commits: [{ message: message }], - variables_attributes: variables_attributes } + variables_attributes: variables_attributes, + push_options: push_options } described_class.new(project, user, params).execute( source, trigger_request: trigger_request, merge_request: merge_request) @@ -357,6 +359,22 @@ describe Ci::CreatePipelineService do end end + context 'when push options contain ci.skip' do + let(:push_options) do + ['ci.skip', + 'another push option'] + end + + it 'creates a pipline in the skipped state' do + pipeline = execute_service(push_options: push_options) + + # TODO: DRY these up with "skips builds creation if the commit message" + expect(pipeline).to be_persisted + expect(pipeline.builds.any?).to be false + expect(pipeline.status).to eq("skipped") + end + end + context 'when there are no jobs for this pipeline' do before do config = YAML.dump({ test: { script: 'ls', only: ['feature'] } }) |