Commit 4b572f80 authored by Fabio Papa's avatar Fabio Papa

Make subgroup_creation_level default to maintainer at SQL level

- Migration updates existing groups to "owner", then sets default to
  "maintainer" so that new groups will default to that
- Update spec examples
parent bcc970f6
...@@ -70,14 +70,13 @@ describe Admin::GroupsController do ...@@ -70,14 +70,13 @@ describe Admin::GroupsController do
end end
it 'updates the subgroup_creation_level successfully' do it 'updates the subgroup_creation_level successfully' do
MAINTAINER = ::Gitlab::Access::MAINTAINER_SUBGROUP_ACCESS OWNER = ::Gitlab::Access::OWNER_SUBGROUP_ACCESS
expect do expect do
post :update, post :update,
params: { id: group.to_param, params: { id: group.to_param,
group: { subgroup_creation_level: MAINTAINER } } group: { subgroup_creation_level: OWNER } }
end.to change { group.reload.subgroup_creation_level } end.to change { group.reload.subgroup_creation_level }.to(OWNER)
.to(MAINTAINER)
end end
end end
end end
...@@ -5,7 +5,6 @@ FactoryBot.define do ...@@ -5,7 +5,6 @@ FactoryBot.define do
type 'Group' type 'Group'
owner nil owner nil
project_creation_level ::Gitlab::Access::MAINTAINER_PROJECT_ACCESS project_creation_level ::Gitlab::Access::MAINTAINER_PROJECT_ACCESS
subgroup_creation_level ::Gitlab::Access::OWNER_SUBGROUP_ACCESS
after(:create) do |group| after(:create) do |group|
if group.owner if group.owner
......
...@@ -78,10 +78,11 @@ describe 'Group show page' do ...@@ -78,10 +78,11 @@ describe 'Group show page' do
context 'when subgroups are supported', :nested_groups do context 'when subgroups are supported', :nested_groups do
before do before do
allow(Group).to receive(:supports_nested_objects?) { true } allow(Group).to receive(:supports_nested_objects?) { true }
visit path
end end
it 'allows creating subgroups' do it 'allows creating subgroups' do
visit path
expect(page) expect(page)
.to have_css("li[data-text='New subgroup']", visible: false) .to have_css("li[data-text='New subgroup']", visible: false)
end end
...@@ -90,10 +91,11 @@ describe 'Group show page' do ...@@ -90,10 +91,11 @@ describe 'Group show page' do
context 'when subgroups are not supported' do context 'when subgroups are not supported' do
before do before do
allow(Group).to receive(:supports_nested_objects?) { false } allow(Group).to receive(:supports_nested_objects?) { false }
visit path
end end
it 'does not allow creating subgroups' do it 'does not allow creating subgroups' do
visit path
expect(page) expect(page)
.not_to have_selector("li[data-text='New subgroup']", visible: false) .not_to have_selector("li[data-text='New subgroup']", visible: false)
end end
......
...@@ -803,10 +803,10 @@ describe API::Groups do ...@@ -803,10 +803,10 @@ describe API::Groups do
group2.add_maintainer(user1) group2.add_maintainer(user1)
end end
it 'cannot create subgroups' do it 'can create subgroups' do
post api("/groups", user1), params: { parent_id: group2.id, name: 'foo', path: 'foo' } post api("/groups", user1), params: { parent_id: group2.id, name: 'foo', path: 'foo' }
expect(response).to have_gitlab_http_status(403) expect(response).to have_gitlab_http_status(201)
end end
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment