Merge branch '25171-fix-mr-features-settings-hidden-when-builds-are-disabled' into 'master'
Remove wrong '.builds-feature' class from the MR settings fieldset Closes #25171 See merge request !7930
This commit is contained in:
commit
30daf78daf
5 changed files with 99 additions and 19 deletions
15
app/views/projects/_merge_request_merge_settings.html.haml
Normal file
15
app/views/projects/_merge_request_merge_settings.html.haml
Normal file
|
@ -0,0 +1,15 @@
|
|||
- form = local_assigns.fetch(:form)
|
||||
|
||||
.form-group
|
||||
.checkbox.builds-feature
|
||||
= form.label :only_allow_merge_if_build_succeeds do
|
||||
= form.check_box :only_allow_merge_if_build_succeeds
|
||||
%strong Only allow merge requests to be merged if the build succeeds
|
||||
%br
|
||||
%span.descr
|
||||
Builds need to be configured to enable this feature.
|
||||
= link_to icon('question-circle'), help_page_path('user/project/merge_requests/merge_when_build_succeeds', anchor: 'only-allow-merge-requests-to-be-merged-if-the-build-succeeds')
|
||||
.checkbox
|
||||
= form.label :only_allow_merge_if_all_discussions_are_resolved do
|
||||
= form.check_box :only_allow_merge_if_all_discussions_are_resolved
|
||||
%strong Only allow merge requests to be merged if all discussions are resolved
|
|
@ -1,18 +1,8 @@
|
|||
.merge-requests-feature
|
||||
%fieldset.builds-feature
|
||||
%hr
|
||||
%h5.prepend-top-0
|
||||
Merge Requests
|
||||
.form-group
|
||||
.checkbox
|
||||
= f.label :only_allow_merge_if_build_succeeds do
|
||||
= f.check_box :only_allow_merge_if_build_succeeds
|
||||
%strong Only allow merge requests to be merged if the build succeeds
|
||||
%br
|
||||
%span.descr
|
||||
Builds need to be configured to enable this feature.
|
||||
= link_to icon('question-circle'), help_page_path('user/project/merge_requests/merge_when_build_succeeds', anchor: 'only-allow-merge-requests-to-be-merged-if-the-build-succeeds')
|
||||
.checkbox
|
||||
= f.label :only_allow_merge_if_all_discussions_are_resolved do
|
||||
= f.check_box :only_allow_merge_if_all_discussions_are_resolved
|
||||
%strong Only allow merge requests to be merged if all discussions are resolved
|
||||
- form = local_assigns.fetch(:form)
|
||||
|
||||
%fieldset.features.merge-requests-feature.append-bottom-default
|
||||
%hr
|
||||
%h5.prepend-top-0
|
||||
Merge Requests
|
||||
|
||||
= render 'projects/merge_request_merge_settings', form: form
|
||||
|
|
|
@ -112,7 +112,8 @@
|
|||
%span.descr Enable Container Registry for this project
|
||||
= link_to icon('question-circle'), help_page_path('user/project/container_registry'), target: '_blank'
|
||||
|
||||
= render 'merge_request_settings', f: f
|
||||
= render 'merge_request_settings', form: f
|
||||
|
||||
%hr
|
||||
%fieldset.features.append-bottom-default
|
||||
%h5.prepend-top-0
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
title: Remove wrong '.builds-feature' class from the MR settings fieldset
|
||||
merge_request: 7930
|
||||
author:
|
|
@ -0,0 +1,70 @@
|
|||
require 'spec_helper'
|
||||
|
||||
feature 'Project settings > Merge Requests', feature: true, js: true do
|
||||
include GitlabRoutingHelper
|
||||
|
||||
let(:project) { create(:empty_project, :public) }
|
||||
let(:user) { create(:user) }
|
||||
|
||||
background do
|
||||
project.team << [user, :master]
|
||||
login_as(user)
|
||||
end
|
||||
|
||||
context 'when Merge Request and Builds are initially enabled' do
|
||||
before do
|
||||
project.project_feature.update_attribute('merge_requests_access_level', ProjectFeature::ENABLED)
|
||||
end
|
||||
|
||||
context 'when Builds are initially enabled' do
|
||||
before do
|
||||
project.project_feature.update_attribute('builds_access_level', ProjectFeature::ENABLED)
|
||||
visit edit_project_path(project)
|
||||
end
|
||||
|
||||
scenario 'shows the Merge Requests settings' do
|
||||
expect(page).to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
|
||||
select 'Disabled', from: "project_project_feature_attributes_merge_requests_access_level"
|
||||
|
||||
expect(page).not_to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).not_to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
end
|
||||
end
|
||||
|
||||
context 'when Builds are initially disabled' do
|
||||
before do
|
||||
project.project_feature.update_attribute('builds_access_level', ProjectFeature::DISABLED)
|
||||
visit edit_project_path(project)
|
||||
end
|
||||
|
||||
scenario 'shows the Merge Requests settings that do not depend on Builds feature' do
|
||||
expect(page).not_to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
|
||||
select 'Everyone with access', from: "project_project_feature_attributes_builds_access_level"
|
||||
|
||||
expect(page).to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when Merge Request are initially disabled' do
|
||||
before do
|
||||
project.project_feature.update_attribute('merge_requests_access_level', ProjectFeature::DISABLED)
|
||||
visit edit_project_path(project)
|
||||
end
|
||||
|
||||
scenario 'does not show the Merge Requests settings' do
|
||||
expect(page).not_to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).not_to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
|
||||
select 'Everyone with access', from: "project_project_feature_attributes_merge_requests_access_level"
|
||||
|
||||
expect(page).to have_content('Only allow merge requests to be merged if the build succeeds')
|
||||
expect(page).to have_content('Only allow merge requests to be merged if all discussions are resolved')
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue