summaryrefslogtreecommitdiff
path: root/spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb')
-rw-r--r--spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb46
1 files changed, 46 insertions, 0 deletions
diff --git a/spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb b/spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb
index 458746f0854..7d024103943 100644
--- a/spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb
+++ b/spec/features/merge_request/user_sees_merge_request_pipelines_spec.rb
@@ -56,6 +56,8 @@ RSpec.describe 'Merge request > User sees pipelines triggered by merge request',
end
before do
+ stub_feature_flags(auto_merge_labels_mr_widget: false)
+
visit project_merge_request_path(project, merge_request)
page.within('.merge-request-tabs') do
@@ -185,6 +187,48 @@ RSpec.describe 'Merge request > User sees pipelines triggered by merge request',
end
end
+ context 'when a user created a merge request in the parent project with auto_merge_labels_mr_widget on' do
+ before do
+ stub_feature_flags(auto_merge_labels_mr_widget: true)
+
+ visit project_merge_request_path(project, merge_request)
+
+ page.within('.merge-request-tabs') do
+ click_link('Pipelines')
+ end
+ end
+
+ context 'when a user merges a merge request in the parent project', :sidekiq_might_not_need_inline do
+ before do
+ click_link 'Overview'
+ click_button 'Set to auto-merge'
+
+ wait_for_requests
+ end
+
+ context 'when detached merge request pipeline is pending' do
+ it 'waits the head pipeline' do
+ expect(page).to have_content('to be merged automatically when the pipeline succeeds')
+ expect(page).to have_button('Cancel auto-merge')
+ end
+ end
+
+ context 'when branch pipeline succeeds' do
+ before do
+ click_link 'Overview'
+ push_pipeline.reload.succeed!
+
+ wait_for_requests
+ end
+
+ it 'waits the head pipeline' do
+ expect(page).to have_content('to be merged automatically when the pipeline succeeds')
+ expect(page).to have_button('Cancel auto-merge')
+ end
+ end
+ end
+ end
+
context 'when there are no `merge_requests` keyword in .gitlab-ci.yml' do
let(:config) do
{
@@ -244,6 +288,8 @@ RSpec.describe 'Merge request > User sees pipelines triggered by merge request',
before do
forked_project.add_maintainer(user2)
+ stub_feature_flags(auto_merge_labels_mr_widget: false)
+
visit project_merge_request_path(project, merge_request)
page.within('.merge-request-tabs') do