diff options
Diffstat (limited to 'spec/models/ci/pipeline_spec.rb')
-rw-r--r-- | spec/models/ci/pipeline_spec.rb | 56 |
1 files changed, 39 insertions, 17 deletions
diff --git a/spec/models/ci/pipeline_spec.rb b/spec/models/ci/pipeline_spec.rb index 7e572e2fdc6..887ec48ec8f 100644 --- a/spec/models/ci/pipeline_spec.rb +++ b/spec/models/ci/pipeline_spec.rb @@ -2925,7 +2925,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, :created) } it 'returns detailed status for created pipeline' do - expect(subject.text).to eq s_('CiStatusText|created') + expect(subject.text).to eq s_('CiStatusText|Created') end end @@ -2933,7 +2933,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :pending) } it 'returns detailed status for pending pipeline' do - expect(subject.text).to eq s_('CiStatusText|pending') + expect(subject.text).to eq s_('CiStatusText|Pending') end end @@ -2941,7 +2941,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :running) } it 'returns detailed status for running pipeline' do - expect(subject.text).to eq s_('CiStatus|running') + expect(subject.text).to eq s_('CiStatusText|Running') end end @@ -2949,7 +2949,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :success) } it 'returns detailed status for successful pipeline' do - expect(subject.text).to eq s_('CiStatusText|passed') + expect(subject.text).to eq s_('CiStatusText|Passed') end end @@ -2957,7 +2957,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :failed) } it 'returns detailed status for failed pipeline' do - expect(subject.text).to eq s_('CiStatusText|failed') + expect(subject.text).to eq s_('CiStatusText|Failed') end end @@ -2965,7 +2965,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :canceled) } it 'returns detailed status for canceled pipeline' do - expect(subject.text).to eq s_('CiStatusText|canceled') + expect(subject.text).to eq s_('CiStatusText|Canceled') end end @@ -2973,7 +2973,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :skipped) } it 'returns detailed status for skipped pipeline' do - expect(subject.text).to eq s_('CiStatusText|skipped') + expect(subject.text).to eq s_('CiStatusText|Skipped') end end @@ -2981,7 +2981,7 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: let(:pipeline) { create(:ci_pipeline, status: :manual) } it 'returns detailed status for blocked pipeline' do - expect(subject.text).to eq s_('CiStatusText|blocked') + expect(subject.text).to eq s_('CiStatusText|Blocked') end end @@ -3250,22 +3250,23 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: shared_examples 'a method that returns all merge requests for a given pipeline' do let(:pipeline) { create(:ci_empty_pipeline, status: 'created', project: pipeline_project, ref: 'master') } + let(:merge_request) do + create( + :merge_request, + source_project: pipeline_project, + target_project: project, + source_branch: pipeline.ref + ) + end it 'returns all merge requests having the same source branch and the pipeline sha' do - merge_request = create(:merge_request, source_project: pipeline_project, target_project: project, source_branch: pipeline.ref) - - create(:merge_request_diff, merge_request: merge_request).tap do |diff| - create(:merge_request_diff_commit, merge_request_diff: diff, sha: pipeline.sha) - end + create(:merge_request_diff_commit, merge_request_diff: merge_request.merge_request_diff, sha: pipeline.sha) expect(pipeline.all_merge_requests).to eq([merge_request]) end it "doesn't return merge requests having the same source branch without the pipeline sha" do - merge_request = create(:merge_request, source_project: pipeline_project, target_project: project, source_branch: pipeline.ref) - create(:merge_request_diff, merge_request: merge_request).tap do |diff| - create(:merge_request_diff_commit, merge_request_diff: diff, sha: 'unrelated') - end + create(:merge_request_diff_commit, merge_request_diff: merge_request.merge_request_diff, sha: 'unrelated') expect(pipeline.all_merge_requests).to be_empty end @@ -5577,4 +5578,25 @@ RSpec.describe Ci::Pipeline, :mailer, factory_default: :keep, feature_category: end end end + + describe '#reduced_build_attributes_list_for_rules?' do + subject { pipeline.reduced_build_attributes_list_for_rules? } + + let(:pipeline) { build_stubbed(:ci_pipeline, project: project, user: user) } + + it { is_expected.to be_truthy } + + it 'memoizes the result' do + expect { subject } + .to change { pipeline.strong_memoized?(:reduced_build_attributes_list_for_rules?) } + end + + context 'with the FF disabled' do + before do + stub_feature_flags(reduced_build_attributes_list_for_rules: false) + end + + it { is_expected.to be_falsey } + end + end end |