diff options
author | Rémy Coutable <remy@rymai.me> | 2016-11-23 15:17:59 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-11-23 15:17:59 +0000 |
commit | 010790ee39069f82ced551db6a98f9234c5c81f7 (patch) | |
tree | 571b2cf65f9cc68cd797857c0a0bee200fbfef00 /spec | |
parent | ae4cc429a09d05a9bdfa7682bc6df9820786e2c1 (diff) | |
parent | eff1b05ab1d50895be668be12de8239def648d97 (diff) | |
download | gitlab-ce-010790ee39069f82ced551db6a98f9234c5c81f7.tar.gz |
Merge branch 'api-delete-group-share' into 'master'
API: Add endpoint to delete a group share
Closes #24771
See merge request !7662
Diffstat (limited to 'spec')
-rw-r--r-- | spec/requests/api/projects_spec.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb index f020d471422..e53ee2a4e76 100644 --- a/spec/requests/api/projects_spec.rb +++ b/spec/requests/api/projects_spec.rb @@ -908,6 +908,36 @@ describe API::API, api: true do end end + describe 'DELETE /projects/:id/share/:group_id' do + it 'returns 204 when deleting a group share' do + group = create(:group, :public) + create(:project_group_link, group: group, project: project) + + delete api("/projects/#{project.id}/share/#{group.id}", user) + + expect(response).to have_http_status(204) + expect(project.project_group_links).to be_empty + end + + it 'returns a 400 when group id is not an integer' do + delete api("/projects/#{project.id}/share/foo", user) + + expect(response).to have_http_status(400) + end + + it 'returns a 404 error when group link does not exist' do + delete api("/projects/#{project.id}/share/1234", user) + + expect(response).to have_http_status(404) + end + + it 'returns a 404 error when project does not exist' do + delete api("/projects/123/share/1234", user) + + expect(response).to have_http_status(404) + end + end + describe 'GET /projects/search/:query' do let!(:query) { 'query'} let!(:search) { create(:empty_project, name: query, creator_id: user.id, namespace: user.namespace) } |