From 167b90bd9d0f6266cc28906b9dc6be8f14bd422d Mon Sep 17 00:00:00 2001
From: Kat
Date: Wed, 5 Jul 2023 15:27:41 +0100
Subject: [PATCH] Update delete button to use delete controller
---
app/views/logs/delete_duplicates.html.erb | 11 ++++++-----
spec/features/lettings_log_spec.rb | 17 +++++++++++++++++
2 files changed, 23 insertions(+), 5 deletions(-)
diff --git a/app/views/logs/delete_duplicates.html.erb b/app/views/logs/delete_duplicates.html.erb
index 8f6c6015e..23104e7b8 100644
--- a/app/views/logs/delete_duplicates.html.erb
+++ b/app/views/logs/delete_duplicates.html.erb
@@ -1,5 +1,5 @@
<% content_for :before_content do %>
- <% content_for :title, "Are you sure you want to delete #{@duplicate_logs.count == 1 ? "this duplicate log" : "these duplicate logs"}?" %>
+ <% content_for :title, "Are you sure you want to delete #{@duplicate_logs.count == 1 ? 'this duplicate log' : 'these duplicate logs'}?" %>
<%= govuk_back_link href: @log.lettings? ? lettings_logs_path(@log) : sales_logs_path(@log) %>
<% end %>
@@ -16,13 +16,14 @@
<% @duplicate_logs.each do |duplicate_log| %>
- <%= govuk_link_to "Log #{duplicate_log.id}", lettings_log_path(duplicate_log)%>
+ <%= govuk_link_to "Log #{duplicate_log.id}", lettings_log_path(duplicate_log) %>
<% end %>
- <%= govuk_button_to(
- @duplicate_logs.count == 1 ? "Delete this log" : "Delete these logs"
- ) %>
+ <%= govuk_button_to @duplicate_logs.count == 1 ? "Delete this log" : "Delete these logs",
+ delete_logs_lettings_logs_path,
+ method: "delete",
+ params: { ids: @duplicate_logs.map(&:id) } %>
<%= govuk_button_link_to(
"Cancel",
@log.lettings? ? lettings_log_path(@log) : sales_log_path(@log),
diff --git a/spec/features/lettings_log_spec.rb b/spec/features/lettings_log_spec.rb
index 993c7e82c..da0520b98 100644
--- a/spec/features/lettings_log_spec.rb
+++ b/spec/features/lettings_log_spec.rb
@@ -389,5 +389,22 @@ RSpec.describe "Lettings Log Features" do
expect(page).to have_current_path("/lettings-logs")
end
end
+
+ context "when there are duplicate logs" do
+ let(:lettings_log) { create(:lettings_log, :completed, owning_organisation: user.organisation, created_by: user) }
+ let!(:duplicate_log) do
+ duplicate = lettings_log.dup
+ duplicate.id = nil
+ duplicate.save!
+ duplicate
+ end
+
+ it "is possible to delete duplicate logs" do
+ visit lettings_log_delete_duplicates_path(lettings_log)
+ click_button "Delete this log"
+ duplicate_log.reload
+ expect(duplicate_log.status).to eq("deleted")
+ end
+ end
end
end