diff --git a/app/controllers/duplicate_logs_controller.rb b/app/controllers/duplicate_logs_controller.rb index 539f06e91..b084a8124 100644 --- a/app/controllers/duplicate_logs_controller.rb +++ b/app/controllers/duplicate_logs_controller.rb @@ -62,9 +62,7 @@ private end def find_original_log_id - return unless @log - query_params = URI.parse(request.url).query - @original_log_id = query_params.present? ? CGI.parse(query_params)["original_log_id"][0]&.to_i : @log.id + @original_log_id = CGI.parse(query_params)["original_log_id"][0]&.to_i if query_params.present? end end diff --git a/app/controllers/form_controller.rb b/app/controllers/form_controller.rb index 16d15569f..3cefa6cf4 100644 --- a/app/controllers/form_controller.rb +++ b/app/controllers/form_controller.rb @@ -165,10 +165,10 @@ private if FeatureToggle.deduplication_flow_enabled? if @log.lettings? if current_user.lettings_logs.duplicate_logs(@log).count.positive? - return send("lettings_log_duplicate_logs_path", @log) + return send("lettings_log_duplicate_logs_path", @log, original_log_id: @log.id) end elsif current_user.sales_logs.duplicate_logs(@log).count.positive? - return send("sales_log_duplicate_logs_path", @log) + return send("sales_log_duplicate_logs_path", @log, original_log_id: @log.id) end end diff --git a/spec/features/lettings_log_spec.rb b/spec/features/lettings_log_spec.rb index 5ed8d807f..d34c73dd1 100644 --- a/spec/features/lettings_log_spec.rb +++ b/spec/features/lettings_log_spec.rb @@ -402,7 +402,7 @@ RSpec.describe "Lettings Log Features" do end it "allows keeping the original log and deleting duplicates" do - expect(page).to have_current_path("/lettings-logs/#{lettings_log.id}/duplicate-logs") + expect(page).to have_current_path("/lettings-logs/#{lettings_log.id}/duplicate-logs?original_log_id=#{lettings_log.id}") click_link("Keep this log and delete duplicates", href: "/lettings-logs/#{lettings_log.id}/delete-duplicates?original_log_id=#{lettings_log.id}") expect(page).to have_current_path("/lettings-logs/#{lettings_log.id}/delete-duplicates?original_log_id=#{lettings_log.id}") click_button "Delete this log" @@ -426,7 +426,7 @@ RSpec.describe "Lettings Log Features" do end it "allows keeping the duplicate log and deleting the original one" do - expect(page).to have_current_path("/lettings-logs/#{lettings_log.id}/duplicate-logs") + expect(page).to have_current_path("/lettings-logs/#{lettings_log.id}/duplicate-logs?original_log_id=#{lettings_log.id}") click_link("Keep this log and delete duplicates", href: "/lettings-logs/#{duplicate_log.id}/delete-duplicates?original_log_id=#{lettings_log.id}") expect(page).to have_current_path("/lettings-logs/#{duplicate_log.id}/delete-duplicates?original_log_id=#{lettings_log.id}") click_button "Delete this log" diff --git a/spec/features/sales_log_spec.rb b/spec/features/sales_log_spec.rb index 0a6020bec..186dad51d 100644 --- a/spec/features/sales_log_spec.rb +++ b/spec/features/sales_log_spec.rb @@ -153,7 +153,7 @@ RSpec.describe "Sales Log Features" do end it "allows keeping the original log and deleting duplicates" do - expect(page).to have_current_path("/sales-logs/#{sales_log.id}/duplicate-logs") + expect(page).to have_current_path("/sales-logs/#{sales_log.id}/duplicate-logs?original_log_id=#{sales_log.id}") click_link("Keep this log and delete duplicates", href: "/sales-logs/#{sales_log.id}/delete-duplicates?original_log_id=#{sales_log.id}") expect(page).to have_current_path("/sales-logs/#{sales_log.id}/delete-duplicates?original_log_id=#{sales_log.id}") click_button "Delete this log" @@ -177,7 +177,7 @@ RSpec.describe "Sales Log Features" do end it "allows keeping the duplicate log and deleting the original one" do - expect(page).to have_current_path("/sales-logs/#{sales_log.id}/duplicate-logs") + expect(page).to have_current_path("/sales-logs/#{sales_log.id}/duplicate-logs?original_log_id=#{sales_log.id}") click_link("Keep this log and delete duplicates", href: "/sales-logs/#{duplicate_log.id}/delete-duplicates?original_log_id=#{sales_log.id}") expect(page).to have_current_path("/sales-logs/#{duplicate_log.id}/delete-duplicates?original_log_id=#{sales_log.id}") click_button "Delete this log" diff --git a/spec/requests/duplicate_logs_controller_spec.rb b/spec/requests/duplicate_logs_controller_spec.rb index 221c35bee..1de8af9ae 100644 --- a/spec/requests/duplicate_logs_controller_spec.rb +++ b/spec/requests/duplicate_logs_controller_spec.rb @@ -39,7 +39,7 @@ RSpec.describe DuplicateLogsController, type: :request do before do allow(LettingsLog).to receive(:duplicate_logs).and_return(duplicate_logs) - get "/lettings-logs/#{lettings_log.id}/duplicate-logs" + get "/lettings-logs/#{lettings_log.id}/duplicate-logs?original_log_id=#{lettings_log.id}" end it "displays links to all the duplicate logs" do @@ -72,7 +72,7 @@ RSpec.describe DuplicateLogsController, type: :request do before do allow(SalesLog).to receive(:duplicate_logs).and_return(duplicate_logs) - get "/sales-logs/#{sales_log.id}/duplicate-logs" + get "/sales-logs/#{sales_log.id}/duplicate-logs?original_log_id=#{sales_log.id}" end it "displays links to all the duplicate logs" do diff --git a/spec/requests/form_controller_spec.rb b/spec/requests/form_controller_spec.rb index a6143f91a..3cfd414b4 100644 --- a/spec/requests/form_controller_spec.rb +++ b/spec/requests/form_controller_spec.rb @@ -542,7 +542,7 @@ RSpec.describe FormController, type: :request do end it "redirects to the duplicate logs page" do - expect(response).to redirect_to("/lettings-logs/#{lettings_log.id}/duplicate-logs") + expect(response).to redirect_to("/lettings-logs/#{lettings_log.id}/duplicate-logs?original_log_id=#{lettings_log.id}") follow_redirect! expect(page).to have_content("These logs are duplicates") end @@ -575,7 +575,7 @@ RSpec.describe FormController, type: :request do end it "redirects to the duplicate logs page" do - expect(response).to redirect_to("/sales-logs/#{sales_log.id}/duplicate-logs") + expect(response).to redirect_to("/sales-logs/#{sales_log.id}/duplicate-logs?original_log_id=#{sales_log.id}") follow_redirect! expect(page).to have_content("These logs are duplicates") end