From 557e6e6a3737deddfc5279bc9ed4f02d266d6d5e Mon Sep 17 00:00:00 2001 From: Gaetan Craig-Riou Date: Wed, 10 Jan 2024 16:46:13 +1100 Subject: [PATCH] Return a duplicate empty string for css pack request --- spec/system/admin/invoice_print_spec.rb | 12 ++++++------ .../spree/admin/orders/invoice.html.haml_spec.rb | 9 +++++---- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/spec/system/admin/invoice_print_spec.rb b/spec/system/admin/invoice_print_spec.rb index 1f333f1495..45a6823706 100644 --- a/spec/system/admin/invoice_print_spec.rb +++ b/spec/system/admin/invoice_print_spec.rb @@ -29,12 +29,12 @@ describe ' before do Capybara.current_driver = :rack_test - # Ignore request for CSS pack like: 'http://www.example.com/packs-test/css/mail-1ab2dc7f.css' - VCR.configure do |config| - config.ignore_request do |request| - request.uri.to_s.include?('packs-test/css/mail') - end - end + + # return a duplicate empaty string for CSS pack request like: + # 'http://test.host/packs-test/css/mail-1ab2dc7f.css' + # This is because Wicked PDF will try to force an encoding on the returned string, which will + # break with a frozen string + stub_request(:get, ->(uri) { uri.to_s.include? "/css/mail" }).to_return(body: "".dup) end after do diff --git a/spec/views/spree/admin/orders/invoice.html.haml_spec.rb b/spec/views/spree/admin/orders/invoice.html.haml_spec.rb index c833bca906..f0aebd480e 100644 --- a/spec/views/spree/admin/orders/invoice.html.haml_spec.rb +++ b/spec/views/spree/admin/orders/invoice.html.haml_spec.rb @@ -27,10 +27,11 @@ describe "spree/admin/orders/invoice.html.haml" do display_checkout_total_less_tax: '8', outstanding_balance_label: 'Outstanding Balance' - # Ignore requests for CSS pack like: 'http://test.host/packs-test/css/mail-1ab2dc7f.css' - VCR.configure do |config| - config.ignore_hosts('test.host') - end + # return a duplicate empaty string for CSS pack request like: + # 'http://test.host/packs-test/css/mail-1ab2dc7f.css' + # This is because Wicked PDF will try to force an encoding on the returned string, which will + # break with a frozen string + stub_request(:get, ->(uri) { uri.to_s.include? "/css/mail" }).to_return(body: "".dup) end it "displays the customer code" do