a1805cbcd5
1. Never send a pipeline email to anyone other than the user who created the pipeline. 2. Only send pipeline success emails to people with the custom notification setting for enabled. Watchers and participants will never receive this. 3. When custom settings are unset (for new settings and legacy ones), act as if failed_pipeline is set.
57 lines
1.3 KiB
Ruby
57 lines
1.3 KiB
Ruby
FactoryGirl.define do
|
|
factory :ci_empty_pipeline, class: Ci::Pipeline do
|
|
ref 'master'
|
|
sha '97de212e80737a608d939f648d959671fb0a0142'
|
|
status 'pending'
|
|
|
|
project factory: :empty_project
|
|
|
|
factory :ci_pipeline_without_jobs do
|
|
after(:build) do |pipeline|
|
|
allow(pipeline).to receive(:ci_yaml_file) { YAML.dump({}) }
|
|
end
|
|
end
|
|
|
|
factory :ci_pipeline_with_one_job do
|
|
after(:build) do |pipeline|
|
|
allow(pipeline).to receive(:ci_yaml_file) do
|
|
YAML.dump({ rspec: { script: "ls" } })
|
|
end
|
|
end
|
|
end
|
|
|
|
factory :ci_pipeline do
|
|
transient { config nil }
|
|
|
|
after(:build) do |pipeline, evaluator|
|
|
allow(pipeline).to receive(:ci_yaml_file) do
|
|
if evaluator.config
|
|
YAML.dump(evaluator.config)
|
|
else
|
|
File.read(Rails.root.join('spec/support/gitlab_stubs/gitlab_ci.yml'))
|
|
end
|
|
end
|
|
|
|
# Populates pipeline with errors
|
|
#
|
|
pipeline.config_processor if evaluator.config
|
|
end
|
|
|
|
trait :invalid do
|
|
config(rspec: nil)
|
|
end
|
|
|
|
trait :blocked do
|
|
status :manual
|
|
end
|
|
|
|
trait :success do
|
|
status :success
|
|
end
|
|
|
|
trait :failed do
|
|
status :failed
|
|
end
|
|
end
|
|
end
|
|
end
|