Browse Source

Add soft errors confirm page

pull/1615/head
Kat 3 years ago
parent
commit
48ca9bfebf
  1. 22
      app/views/bulk_upload_lettings_data_check/confirm.html.erb
  2. 26
      spec/requests/bulk_upload_lettings_data_check_controller_spec.rb

22
app/views/bulk_upload_lettings_data_check/confirm.html.erb

@ -0,0 +1,22 @@
<% content_for :before_content do %>
<%= govuk_back_link href: @form.back_path %>
<% end %>
<div class="govuk-grid-row">
<div class="govuk-grid-column-two-thirds">
<span class="govuk-caption-l">Bulk upload for lettings (<%= @bulk_upload.year_combo %>)</span>
<h1 class="govuk-heading-l">Are you sure you want to upload all logs from this bulk upload?</h1>
<p class="govuk-body">There are <%= pluralize(@bulk_upload.logs.count, "log") %> in this bulk upload, and <%= pluralize(@bulk_upload.bulk_upload_errors.count, "unexpected answer") %> will be marked as correct.</p>
<%= govuk_warning_text(icon_fallback_text: "Danger") do %>
You can not delete logs once you create them
<% end %>
<%= form_with model: @form, scope: :form, url: page_bulk_upload_lettings_data_check_path(@bulk_upload, page: "confirm"), method: :patch do |f| %>
<%= f.govuk_submit %>
<%= govuk_button_link_to "Cancel", @form.back_path, secondary: true %>
<% end %>
</div>
</div>

26
spec/requests/bulk_upload_lettings_data_check_controller_spec.rb

@ -6,6 +6,7 @@ RSpec.describe BulkUploadLettingsDataCheckController, type: :request do
let(:bulk_upload_errors) { create_list(:bulk_upload_error, 2) } let(:bulk_upload_errors) { create_list(:bulk_upload_error, 2) }
before do before do
create_list(:lettings_log, 2, bulk_upload:)
sign_in user sign_in user
end end
@ -48,4 +49,29 @@ RSpec.describe BulkUploadLettingsDataCheckController, type: :request do
end end
end end
end end
describe "GET /lettings-logs/bulk-upload-data-check/:ID/confirm" do
it "renders page" do
get "/lettings-logs/bulk-upload-data-check/#{bulk_upload.id}/confirm"
expect(response).to be_successful
expect(response.body).to include("Are you sure you want to upload all logs from this bulk upload?")
expect(response.body).to include("There are 2 logs in this bulk upload, and 2 unexpected answers will be marked as correct.")
end
end
describe "PATCH /lettings-logs/bulk-upload-resume/:ID/confirm" do
let(:mock_processor) { instance_double(BulkUpload::Processor, approve: nil) }
it "approves logs for creation" do
allow(BulkUpload::Processor).to receive(:new).with(bulk_upload:).and_return(mock_processor)
patch "/lettings-logs/bulk-upload-resume/#{bulk_upload.id}/confirm"
expect(mock_processor).to have_received(:approve)
expect(response).to redirect_to("/lettings-logs/bulk-upload-results/#{bulk_upload.id}/resume")
end
end
end end

Loading…
Cancel
Save