summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2016-06-17 16:33:10 +0200
committerRémy Coutable <remy@rymai.me>2016-06-18 05:46:45 +0200
commit724f986fb2cf8fee3606bffd01da9842634400ef (patch)
treebc1f56403886e3f81fb60faee866a1ab95b0fecb
parent6c5b2377f769185f562578791139a13939867b73 (diff)
downloadgitlab-ce-724f986fb2cf8fee3606bffd01da9842634400ef.tar.gz
Redirect to the member's source on request withdrawal
Signed-off-by: Rémy Coutable <remy@rymai.me>
-rw-r--r--app/controllers/concerns/membership_actions.rb3
-rw-r--r--spec/controllers/groups/group_members_controller_spec.rb2
-rw-r--r--spec/controllers/projects/project_members_controller_spec.rb2
3 files changed, 4 insertions, 3 deletions
diff --git a/app/controllers/concerns/membership_actions.rb b/app/controllers/concerns/membership_actions.rb
index b1343576b3c..7e6b83bcc37 100644
--- a/app/controllers/concerns/membership_actions.rb
+++ b/app/controllers/concerns/membership_actions.rb
@@ -34,8 +34,9 @@ module MembershipActions
else
"You left the \"#{@member.source.human_name}\" #{source_type}."
end
+ redirect_path = @member.request? ? @member.source : [:dashboard, @member.real_source_type.tableize]
- redirect_to [:dashboard, @member.real_source_type.tableize], notice: notice
+ redirect_to redirect_path, notice: notice
else
if cannot_leave?
alert = "You can not leave the \"#{@member.source.human_name}\" #{source_type}."
diff --git a/spec/controllers/groups/group_members_controller_spec.rb b/spec/controllers/groups/group_members_controller_spec.rb
index 89c2c26a367..8798d709f30 100644
--- a/spec/controllers/groups/group_members_controller_spec.rb
+++ b/spec/controllers/groups/group_members_controller_spec.rb
@@ -134,7 +134,7 @@ describe Groups::GroupMembersController do
delete :leave, group_id: group
expect(response).to set_flash.to 'Your access request to the group has been withdrawn.'
- expect(response).to redirect_to(dashboard_groups_path)
+ expect(response).to redirect_to(group_path(group))
expect(group.members.request).to be_empty
expect(group.users).not_to include user
end
diff --git a/spec/controllers/projects/project_members_controller_spec.rb b/spec/controllers/projects/project_members_controller_spec.rb
index fc5f458e795..0a8fe5e04c3 100644
--- a/spec/controllers/projects/project_members_controller_spec.rb
+++ b/spec/controllers/projects/project_members_controller_spec.rb
@@ -190,7 +190,7 @@ describe Projects::ProjectMembersController do
project_id: project
expect(response).to set_flash.to 'Your access request to the project has been withdrawn.'
- expect(response).to redirect_to(dashboard_projects_path)
+ expect(response).to redirect_to(namespace_project_path(project.namespace, project))
expect(project.members.request).to be_empty
expect(project.users).not_to include user
end