diff options
author | Rémy Coutable <remy@rymai.me> | 2017-06-21 10:08:16 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2017-06-21 10:08:16 +0000 |
commit | 6a3da45a22165f2f71c023e0656ff07820a1e60e (patch) | |
tree | 27296bfe1fb29e70be6469adc704d7a9cf4df6a1 /spec | |
parent | 4b0b2f1525be5feac0ae0953eb573ff24cc7b9c5 (diff) | |
parent | c7bcebd56e264772a8fe177e64476ea7b2b80144 (diff) | |
download | gitlab-ce-6a3da45a22165f2f71c023e0656ff07820a1e60e.tar.gz |
Merge branch '33878-fix-edit-deploy-key' into 'master'
Fix edit button for deploy keys available from other projects
Closes #33878
See merge request !12301
Diffstat (limited to 'spec')
-rw-r--r-- | spec/features/projects/settings/repository_settings_spec.rb | 17 | ||||
-rw-r--r-- | spec/requests/api/deploy_keys_spec.rb | 10 |
2 files changed, 27 insertions, 0 deletions
diff --git a/spec/features/projects/settings/repository_settings_spec.rb b/spec/features/projects/settings/repository_settings_spec.rb index 2956ef73746..35cd0d6e832 100644 --- a/spec/features/projects/settings/repository_settings_spec.rb +++ b/spec/features/projects/settings/repository_settings_spec.rb @@ -65,6 +65,23 @@ feature 'Repository settings', feature: true do expect(page).to have_content('Write access allowed') end + scenario 'edit a deploy key from projects user has access to' do + project2 = create(:project_empty_repo) + project2.team << [user, role] + project2.deploy_keys << private_deploy_key + + visit namespace_project_settings_repository_path(project.namespace, project) + + find('li', text: private_deploy_key.title).click_link('Edit') + + fill_in 'deploy_key_title', with: 'updated_deploy_key' + check 'deploy_key_can_push' + click_button 'Save changes' + + expect(page).to have_content('updated_deploy_key') + expect(page).to have_content('Write access allowed') + end + scenario 'remove an existing deploy key' do project.deploy_keys << private_deploy_key visit namespace_project_settings_repository_path(project.namespace, project) diff --git a/spec/requests/api/deploy_keys_spec.rb b/spec/requests/api/deploy_keys_spec.rb index 9c260f88f56..32439981b60 100644 --- a/spec/requests/api/deploy_keys_spec.rb +++ b/spec/requests/api/deploy_keys_spec.rb @@ -160,6 +160,16 @@ describe API::DeployKeys do expect(json_response['title']).to eq('new title') expect(json_response['can_push']).to eq(true) end + + it 'updates a private ssh key from projects user has access with correct attributes' do + create(:deploy_keys_project, project: project2, deploy_key: private_deploy_key) + + put api("/projects/#{project.id}/deploy_keys/#{private_deploy_key.id}", admin), { title: 'new title', can_push: true } + + expect(json_response['id']).to eq(private_deploy_key.id) + expect(json_response['title']).to eq('new title') + expect(json_response['can_push']).to eq(true) + end end describe 'DELETE /projects/:id/deploy_keys/:key_id' do |