summaryrefslogtreecommitdiff
path: root/spec/controllers/projects/group_links_controller_spec.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-04-20 10:00:54 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-04-20 10:00:54 +0000
commit3cccd102ba543e02725d247893729e5c73b38295 (patch)
treef36a04ec38517f5deaaacb5acc7d949688d1e187 /spec/controllers/projects/group_links_controller_spec.rb
parent205943281328046ef7b4528031b90fbda70c75ac (diff)
downloadgitlab-ce-3cccd102ba543e02725d247893729e5c73b38295.tar.gz
Add latest changes from gitlab-org/gitlab@14-10-stable-eev14.10.0-rc42
Diffstat (limited to 'spec/controllers/projects/group_links_controller_spec.rb')
-rw-r--r--spec/controllers/projects/group_links_controller_spec.rb130
1 files changed, 0 insertions, 130 deletions
diff --git a/spec/controllers/projects/group_links_controller_spec.rb b/spec/controllers/projects/group_links_controller_spec.rb
index ea15d483c90..96705d82ac5 100644
--- a/spec/controllers/projects/group_links_controller_spec.rb
+++ b/spec/controllers/projects/group_links_controller_spec.rb
@@ -18,136 +18,6 @@ RSpec.describe Projects::GroupLinksController do
travel_back
end
- describe '#create' do
- shared_context 'link project to group' do
- before do
- post(:create, params: {
- namespace_id: project.namespace,
- project_id: project,
- link_group_id: group.id,
- link_group_access: ProjectGroupLink.default_access
- })
- end
- end
-
- context 'when project is not allowed to be shared with a group' do
- before do
- group.update!(share_with_group_lock: false)
- end
-
- include_context 'link project to group'
-
- it 'responds with status 404' do
- expect(response).to have_gitlab_http_status(:not_found)
- end
- end
-
- context 'when user has access to group they want to link project to' do
- before do
- group.add_developer(user)
- end
-
- include_context 'link project to group'
-
- it 'links project with selected group' do
- expect(group.shared_projects).to include project
- end
-
- it 'redirects to project group links page' do
- expect(response).to redirect_to(
- project_project_members_path(project)
- )
- end
- end
-
- context 'when user doers not have access to group they want to link to' do
- include_context 'link project to group'
-
- it 'renders 404' do
- expect(response).to have_gitlab_http_status(:not_found)
- end
-
- it 'does not share project with that group' do
- expect(group.shared_projects).not_to include project
- end
- end
-
- context 'when user does not have access to the public group' do
- let(:group) { create(:group, :public) }
-
- include_context 'link project to group'
-
- it 'renders 404' do
- expect(response).to have_gitlab_http_status(:not_found)
- end
-
- it 'does not share project with that group' do
- expect(group.shared_projects).not_to include project
- end
- end
-
- context 'when project group id equal link group id' do
- before do
- group2.add_developer(user)
-
- post(:create, params: {
- namespace_id: project.namespace,
- project_id: project,
- link_group_id: group2.id,
- link_group_access: ProjectGroupLink.default_access
- })
- end
-
- it 'does not share project with selected group' do
- expect(group2.shared_projects).not_to include project
- end
-
- it 'redirects to project group links page' do
- expect(response).to redirect_to(
- project_project_members_path(project)
- )
- end
- end
-
- context 'when link group id is not present' do
- before do
- post(:create, params: {
- namespace_id: project.namespace,
- project_id: project,
- link_group_access: ProjectGroupLink.default_access
- })
- end
-
- it 'redirects to project group links page' do
- expect(response).to redirect_to(
- project_project_members_path(project)
- )
- expect(flash[:alert]).to eq('Please select a group.')
- end
- end
-
- context 'when link is not persisted in the database' do
- before do
- allow(::Projects::GroupLinks::CreateService).to receive_message_chain(:new, :execute)
- .and_return({ status: :error, http_status: 409, message: 'error' })
-
- post(:create, params: {
- namespace_id: project.namespace,
- project_id: project,
- link_group_id: group.id,
- link_group_access: ProjectGroupLink.default_access
- })
- end
-
- it 'redirects to project group links page' do
- expect(response).to redirect_to(
- project_project_members_path(project)
- )
- expect(flash[:alert]).to eq('error')
- end
- end
- end
-
describe '#update' do
let_it_be(:link) do
create(