diff --git a/app/services/fdc_backorderer.rb b/app/services/fdc_backorderer.rb index 33318a8c83..4237ce090c 100644 --- a/app/services/fdc_backorderer.rb +++ b/app/services/fdc_backorderer.rb @@ -152,7 +152,7 @@ class FdcBackorderer end def new?(order) - order.semanticId == urls.orders_url + order.semanticId == urls&.orders_url end def build_sale_session(order) diff --git a/spec/services/fdc_backorderer_spec.rb b/spec/services/fdc_backorderer_spec.rb index 15310526e4..66f078a407 100644 --- a/spec/services/fdc_backorderer_spec.rb +++ b/spec/services/fdc_backorderer_spec.rb @@ -106,4 +106,20 @@ RSpec.describe FdcBackorderer do expect(found_line).to eq existing_line end end + + describe "#new?" do + describe "without knowing URLs" do + let(:subject) { FdcBackorderer.new(nil, nil) } + + it "recognises new orders" do + order = DataFoodConsortium::Connector::Order.new(nil) + expect(subject.new?(order)).to eq true + end + + it "recognises existing orders" do + order = DataFoodConsortium::Connector::Order.new("https://order") + expect(subject.new?(order)).to eq false + end + end + end end