From 6666896fa3ec2c78dceeb202865a6ce91e6154fe Mon Sep 17 00:00:00 2001 From: cyrillefr Date: Wed, 2 Apr 2025 14:46:22 +0200 Subject: [PATCH] Requested changes --- spec/support/reports_helper.rb | 13 ------------- spec/system/admin/reports_spec.rb | 19 ++++++++++++++++++- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/spec/support/reports_helper.rb b/spec/support/reports_helper.rb index 2de8a9ab17..fda57daca0 100644 --- a/spec/support/reports_helper.rb +++ b/spec/support/reports_helper.rb @@ -13,19 +13,6 @@ module ReportsHelper expect(page).to have_button "Go", disabled: false end - def run_failed_report(report) - click_on "Go" - - allow(report).to receive(:new).and_raise(StandardError, 'Provoked error for testing') - perform_enqueued_jobs(only: ReportJob) - - expect(page).not_to have_selector ".loading" - expect(page).to have_button "Go", disabled: false - expect(page).to have_content 'This report failed. It may be too big to process. ' \ - 'We will look into it but please let us know ' \ - 'if the problem persists.' - end - def generate_report run_report click_on "Download Report" diff --git a/spec/system/admin/reports_spec.rb b/spec/system/admin/reports_spec.rb index ff7923e1b3..151a4f80de 100644 --- a/spec/system/admin/reports_spec.rb +++ b/spec/system/admin/reports_spec.rb @@ -352,7 +352,24 @@ RSpec.describe ' visit admin_reports_path click_link 'All products' - run_failed_report(Reporting::Reports::ProductsAndInventory::AllProducts) + report = Reporting::Reports::ProductsAndInventory::AllProducts + + click_on "Go" + + allow(report).to receive(:new).and_raise(StandardError, 'Provoked error for testing') + perform_enqueued_jobs(only: ReportJob) + + expect(page).not_to have_selector ".loading" + expect(page).to have_button "Go", disabled: false + expect(page).to have_content 'This report failed. It may be too big to process. ' \ + 'We will look into it but please let us know ' \ + 'if the problem persists.' + + # Admin shoulb be able to make some changes and retry + sleep(1) + allow(report).to receive(:new).and_call_original + + run_report end it "shows products and inventory report" do