Browse Source

Render not found if there are no duplicate logs

pull/1752/head
Kat 3 years ago
parent
commit
1696678a3e
  1. 6
      app/controllers/lettings_logs_controller.rb
  2. 6
      app/controllers/sales_logs_controller.rb
  3. 26
      spec/requests/lettings_logs_controller_spec.rb
  4. 27
      spec/requests/sales_logs_controller_spec.rb

6
app/controllers/lettings_logs_controller.rb

@ -93,7 +93,11 @@ class LettingsLogsController < LogsController
authorize @log
@duplicate_logs = LettingsLog.duplicate_logs_for_organisation(current_user.organisation, @log)
render "logs/delete_duplicates"
if @duplicate_logs.empty?
render_not_found
else
render "logs/delete_duplicates"
end
end
def download_csv

6
app/controllers/sales_logs_controller.rb

@ -67,7 +67,11 @@ class SalesLogsController < LogsController
authorize @log
@duplicate_logs = SalesLog.duplicate_logs_for_organisation(current_user.organisation, @log)
render "logs/delete_duplicates"
if @duplicate_logs.empty?
render_not_found
else
render "logs/delete_duplicates"
end
end
def download_csv

26
spec/requests/lettings_logs_controller_spec.rb

@ -1676,12 +1676,6 @@ RSpec.describe LettingsLogsController, type: :request do
create(:lettings_log, :completed, owning_organisation: user.organisation)
end
let(:id) { lettings_log.id }
let!(:duplicate_log) do
duplicate = lettings_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
let(:request) { get "/lettings-logs/#{id}/delete-duplicates", headers: }
before do
@ -1689,7 +1683,21 @@ RSpec.describe LettingsLogsController, type: :request do
sign_in user
end
context "when there are no duplicate logs" do
it "renders page not found" do
request
expect(response).to have_http_status(:not_found)
end
end
context "when there is 1 duplicate log being deleted" do
let!(:duplicate_log) do
duplicate = lettings_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
it "renders page" do
request
expect(response).to have_http_status(:ok)
@ -1704,6 +1712,12 @@ RSpec.describe LettingsLogsController, type: :request do
end
context "when there are multiple duplicate logs being deleted" do
let!(:duplicate_log) do
duplicate = lettings_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
let!(:duplicate_log_2) do
duplicate = lettings_log.dup
duplicate.id = nil

27
spec/requests/sales_logs_controller_spec.rb

@ -881,12 +881,7 @@ RSpec.describe SalesLogsController, type: :request do
create(:sales_log, :completed, owning_organisation: user.organisation)
end
let(:id) { sales_log.id }
let!(:duplicate_log) do
duplicate = sales_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
let(:request) { get "/sales-logs/#{id}/delete-duplicates", headers: }
before do
@ -894,7 +889,21 @@ RSpec.describe SalesLogsController, type: :request do
sign_in user
end
context "when there are no duplicate logs" do
it "renders not found" do
request
expect(response).to have_http_status(:not_found)
end
end
context "when there is 1 duplicate log being deleted" do
let!(:duplicate_log) do
duplicate = sales_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
it "renders page" do
request
expect(response).to have_http_status(:ok)
@ -908,6 +917,12 @@ RSpec.describe SalesLogsController, type: :request do
end
context "when there are multiple duplicate logs being deleted" do
let!(:duplicate_log) do
duplicate = sales_log.dup
duplicate.id = nil
duplicate.save!
duplicate
end
let!(:duplicate_log_2) do
duplicate = sales_log.dup
duplicate.id = nil

Loading…
Cancel
Save