diff options
| author | Sean McGivern <sean@mcgivern.me.uk> | 2016-10-21 12:51:44 +0000 |
|---|---|---|
| committer | Sean McGivern <sean@mcgivern.me.uk> | 2016-10-21 12:51:44 +0000 |
| commit | 6c09fbd889a2259f8e2db1927c4e0a3d4cdb01b4 (patch) | |
| tree | d14b2910c41bb7cef16f1b07fc623b77bd75da67 /spec/controllers/projects | |
| parent | 1e66061b1ec5fb11457abca0845c13551afa8258 (diff) | |
| parent | 168197cd5a179c961301225626ac1a175f892782 (diff) | |
| download | gitlab-ce-6c09fbd889a2259f8e2db1927c4e0a3d4cdb01b4.tar.gz | |
Merge branch 'fix_project_member_access_levels' into 'master'
Fix project member access levels
Migrate invalid project members (owner -> master)
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/18616
See merge request !6957
Diffstat (limited to 'spec/controllers/projects')
| -rw-r--r-- | spec/controllers/projects/project_members_controller_spec.rb | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/spec/controllers/projects/project_members_controller_spec.rb b/spec/controllers/projects/project_members_controller_spec.rb index 8519ebc1d5f..5e487241d07 100644 --- a/spec/controllers/projects/project_members_controller_spec.rb +++ b/spec/controllers/projects/project_members_controller_spec.rb @@ -228,4 +228,40 @@ describe Projects::ProjectMembersController do end end end + + describe 'POST create' do + let(:stranger) { create(:user) } + + context 'when creating owner' do + before do + project.team << [user, :master] + sign_in(user) + end + + it 'does not create a member' do + expect do + post :create, user_ids: stranger.id, + namespace_id: project.namespace, + access_level: Member::OWNER, + project_id: project + end.to change { project.members.count }.by(0) + end + end + + context 'when create master' do + before do + project.team << [user, :master] + sign_in(user) + end + + it 'creates a member' do + expect do + post :create, user_ids: stranger.id, + namespace_id: project.namespace, + access_level: Member::MASTER, + project_id: project + end.to change { project.members.count }.by(1) + end + end + end end |
