From 5d10afdf26c4ee278bb5f0104c26562c06558478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Thu, 11 Jun 2020 17:53:24 +0200 Subject: [PATCH] Fix deleting searched managers/moderators/admins We were deleting managers, moderators and administrators based on their user ID, instead of their manager/moderator/administrator ID. --- app/views/admin/administrators/search.html.erb | 2 +- app/views/admin/managers/search.html.erb | 2 +- app/views/admin/moderators/search.html.erb | 2 +- spec/system/admin/administrators_spec.rb | 10 ++++++++++ spec/system/admin/managers_spec.rb | 10 ++++++++++ spec/system/admin/moderators_spec.rb | 10 ++++++++++ 6 files changed, 33 insertions(+), 3 deletions(-) diff --git a/app/views/admin/administrators/search.html.erb b/app/views/admin/administrators/search.html.erb index e8beec208..89064f298 100644 --- a/app/views/admin/administrators/search.html.erb +++ b/app/views/admin/administrators/search.html.erb @@ -20,7 +20,7 @@ <% if user.administrator? && user.administrator.persisted? %> <%= link_to t("admin.administrators.administrator.delete"), - admin_administrator_path(user), + admin_administrator_path(user.administrator), method: :delete, class: "button hollow alert expanded" %> <% else %> diff --git a/app/views/admin/managers/search.html.erb b/app/views/admin/managers/search.html.erb index a986f6134..bc6005d42 100644 --- a/app/views/admin/managers/search.html.erb +++ b/app/views/admin/managers/search.html.erb @@ -20,7 +20,7 @@ <% if user.manager? && user.manager.persisted? %> <%= link_to t("admin.managers.manager.delete"), - admin_manager_path(user), + admin_manager_path(user.manager), method: :delete, class: "button hollow alert expanded" %> <% else %> diff --git a/app/views/admin/moderators/search.html.erb b/app/views/admin/moderators/search.html.erb index 9f4a8d6a9..358e67043 100644 --- a/app/views/admin/moderators/search.html.erb +++ b/app/views/admin/moderators/search.html.erb @@ -20,7 +20,7 @@ <% if user.moderator? && user.moderator.persisted? %> <%= link_to t("admin.moderators.moderator.delete"), - admin_moderator_path(user), + admin_moderator_path(user.moderator), method: :delete, class: "button hollow alert expanded" %> <% else %> diff --git a/spec/system/admin/administrators_spec.rb b/spec/system/admin/administrators_spec.rb index ae17dd478..a97f5d389 100644 --- a/spec/system/admin/administrators_spec.rb +++ b/spec/system/admin/administrators_spec.rb @@ -98,6 +98,16 @@ describe "Admin administrators" do expect(page).to have_content(administrator2.email) expect(page).not_to have_content(administrator1.email) end + + scenario "Delete after searching" do + fill_in "Search user by name or email", with: administrator2.email + click_button "Search" + + click_link "Delete" + + expect(page).to have_content(administrator1.email) + expect(page).not_to have_content(administrator2.email) + end end context "Edit" do diff --git a/spec/system/admin/managers_spec.rb b/spec/system/admin/managers_spec.rb index 49bc43b66..d3b0b30cb 100644 --- a/spec/system/admin/managers_spec.rb +++ b/spec/system/admin/managers_spec.rb @@ -80,5 +80,15 @@ describe "Admin managers" do expect(page).to have_content(manager2.email) expect(page).not_to have_content(manager1.email) end + + scenario "Delete after searching" do + fill_in "Search user by name or email", with: manager2.email + click_button "Search" + + click_link "Delete" + + expect(page).to have_content(manager1.email) + expect(page).not_to have_content(manager2.email) + end end end diff --git a/spec/system/admin/moderators_spec.rb b/spec/system/admin/moderators_spec.rb index 4f9846564..c3e24d800 100644 --- a/spec/system/admin/moderators_spec.rb +++ b/spec/system/admin/moderators_spec.rb @@ -80,5 +80,15 @@ describe "Admin moderators" do expect(page).to have_content(moderator2.email) expect(page).not_to have_content(moderator1.email) end + + scenario "Delete after searching" do + fill_in "Search user by name or email", with: moderator2.email + click_button "Search" + + click_link "Delete" + + expect(page).to have_content(moderator1.email) + expect(page).not_to have_content(moderator2.email) + end end end