Complete an open order

This commit is contained in:
Maikel Linke
2024-09-06 12:46:58 +10:00
parent a7a38890f4
commit f839452df9
3 changed files with 314 additions and 0 deletions

View File

@@ -97,6 +97,11 @@ class FdcBackorderer
end
end
def complete_order(ofn_order, backorder)
backorder.orderStatus = "dfc-v:Complete"
send_order(ofn_order, backorder)
end
def build_sale_session(order)
SaleSessionBuilder.build(order.order_cycle).tap do |session|
session.semanticId = FDC_SALE_SESSION_URL

File diff suppressed because one or more lines are too long

View File

@@ -34,6 +34,18 @@ RSpec.describe FdcBackorderer do
expect(backorder.semanticId).to match %r{^https.*/[0-9]+$}
expect(backorder.lines.count).to eq 1
end
it "completes an order", vcr: true do
backorder = subject.find_or_build_order(order)
expect(backorder.semanticId).to match %r{^https.*/[0-9]+$}
expect(backorder.lines.count).to eq 1
subject.complete_order(order, backorder)
remaining_open_order = subject.find_or_build_order(order)
expect(remaining_open_order.semanticId).not_to eq backorder.semanticId
end
end
describe "#find_or_build_order_line" do