From 3f6427fb1d83ea51ed0ddad443fb3794af7d1b15 Mon Sep 17 00:00:00 2001 From: Phil Lee Date: Wed, 5 Apr 2023 12:38:17 +0100 Subject: [PATCH] show summary when on error threshold --- .../bulk_upload_error_summary_table_component.rb | 4 ++-- .../bulk_upload_lettings_results/summary.html.erb | 2 +- ...ulk_upload_error_summary_table_component_spec.rb | 13 +++++++++++++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/components/bulk_upload_error_summary_table_component.rb b/app/components/bulk_upload_error_summary_table_component.rb index 8dddb61d2..95f656cae 100644 --- a/app/components/bulk_upload_error_summary_table_component.rb +++ b/app/components/bulk_upload_error_summary_table_component.rb @@ -15,7 +15,7 @@ class BulkUploadErrorSummaryTableComponent < ViewComponent::Base @sorted_errors ||= setup_errors.presence || bulk_upload .bulk_upload_errors .group(:col, :field, :error) - .having("count(*) > ?", display_threshold) + .having("count(*) >= ?", display_threshold) .count .sort_by { |el| el[0][0].rjust(3, "0") } end @@ -31,7 +31,7 @@ private .bulk_upload_errors .where(category: "setup") .group(:col, :field, :error) - .having("count(*) > ?", display_threshold) + .having("count(*) >= ?", display_threshold) .count .sort_by { |el| el[0][0].rjust(3, "0") } end diff --git a/app/views/bulk_upload_lettings_results/summary.html.erb b/app/views/bulk_upload_lettings_results/summary.html.erb index a6072fe89..a4adbc5cb 100644 --- a/app/views/bulk_upload_lettings_results/summary.html.erb +++ b/app/views/bulk_upload_lettings_results/summary.html.erb @@ -17,7 +17,7 @@ <%= govuk_tabs(title: "Error reports") do |c| %> <% c.with_tab(label: "Summary") do %>

- This summary shows questions that have at least <%= BulkUploadErrorSummaryTableComponent::DISPLAY_THRESHOLD %> errors or more. See full error report for more details. + This summary shows questions that have more than <%= BulkUploadErrorSummaryTableComponent::DISPLAY_THRESHOLD - 1 %> errors. See full error report for more details.

<%= render BulkUploadErrorSummaryTableComponent.new(bulk_upload: @bulk_upload) %> diff --git a/spec/components/bulk_upload_error_summary_table_component_spec.rb b/spec/components/bulk_upload_error_summary_table_component_spec.rb index 32da38119..73bfa908b 100644 --- a/spec/components/bulk_upload_error_summary_table_component_spec.rb +++ b/spec/components/bulk_upload_error_summary_table_component_spec.rb @@ -30,6 +30,19 @@ RSpec.describe BulkUploadErrorSummaryTableComponent, type: :component do end end + context "when on threshold" do + before do + stub_const("BulkUploadErrorSummaryTableComponent::DISPLAY_THRESHOLD", 1) + + create(:bulk_upload_error, bulk_upload:, col: "A", row: 1) + end + + it "renders tables" do + result = render_inline(component) + expect(result).to have_selector("table", count: 1) + end + end + context "when there are 2 independent errors" do let!(:error_2) { create(:bulk_upload_error, bulk_upload:, col: "B", row: 2) } let!(:error_1) { create(:bulk_upload_error, bulk_upload:, col: "A", row: 1) }