Commit 42dd6bf2 authored by Luke Bennett's avatar Luke Bennett

Fix new group visibility form for non-admins

Removes an owner permission check before rendering the visibility
select radio inputs as non-admins will not have permission.

Ensures all users creating a group can select its visibility.
parent 7f43b65f
......@@ -35,7 +35,7 @@
%p
= _('Who will be able to see this group?')
= link_to _('View the documentation'), help_page_path("public_access/public_access"), target: '_blank'
= render 'shared/visibility_level', f: f, visibility_level: @group.visibility_level, can_change_visibility_level: can_change_group_visibility_level?(@group), form_model: @group, with_label: false
= render 'shared/visibility_level', f: f, visibility_level: default_group_visibility, can_change_visibility_level: true, form_model: @group, with_label: false
= render 'create_chat_team', f: f if Gitlab.config.mattermost.enabled
......
---
title: Fix bug stopping non-admin users from changing visibility level on group creation
merge_request: 22468
author:
type: fixed
require 'spec_helper'
describe 'Group' do
let(:user) { create(:admin) }
before do
sign_in(create(:admin))
sign_in(user)
end
matcher :have_namespace_error_message do
......@@ -16,6 +18,24 @@ describe 'Group' do
visit new_group_path
end
describe 'as a non-admin' do
let(:user) { create(:user) }
it 'creates a group and persists visibility radio selection', :js do
stub_application_setting(default_group_visibility: :private)
fill_in 'Group name', with: 'test-group'
find("input[name='group[visibility_level]'][value='#{Gitlab::VisibilityLevel::PUBLIC}']").click
click_button 'Create group'
group = Group.find_by(name: 'test-group')
expect(group.visibility_level).to eq(Gitlab::VisibilityLevel::PUBLIC)
expect(current_path).to eq(group_path(group))
expect(page).to have_selector '.visibility-icon .fa-globe'
end
end
describe 'with space in group path' do
it 'renders new group form with validation errors' do
fill_in 'Group URL', with: 'space group'
......
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