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
|
@ -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
|
- form = local_assigns.fetch(:form)
|
||||||
%fieldset.builds-feature
|
|
||||||
%hr
|
%fieldset.features.merge-requests-feature.append-bottom-default
|
||||||
%h5.prepend-top-0
|
%hr
|
||||||
Merge Requests
|
%h5.prepend-top-0
|
||||||
.form-group
|
Merge Requests
|
||||||
.checkbox
|
|
||||||
= f.label :only_allow_merge_if_build_succeeds do
|
= render 'projects/merge_request_merge_settings', form: form
|
||||||
= 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
|
|
||||||
|
|
|
@ -112,7 +112,8 @@
|
||||||
%span.descr Enable Container Registry for this project
|
%span.descr Enable Container Registry for this project
|
||||||
= link_to icon('question-circle'), help_page_path('user/project/container_registry'), target: '_blank'
|
= 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
|
%hr
|
||||||
%fieldset.features.append-bottom-default
|
%fieldset.features.append-bottom-default
|
||||||
%h5.prepend-top-0
|
%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 New Issue