fix phase3 acceptance roots and payable validation

This commit is contained in:
2026-08-24 11:48:16 +08:00
parent 044678f65c
commit 257c019b36
15 changed files with 115 additions and 30 deletions
@@ -467,14 +467,17 @@ test('phase3 loading fixture forces A0 through reversible public location status
assert.match(orders, /receivingWarehouseId: id\(master\.receiving\.id\)/)
})
test('customs provisions released booking without pre-completing truck', () => {
test('customs reuses the loading chain released booking without pre-completing truck', () => {
const value = source('./phase3-customs.mjs')
assertOrder(value, [
'selectCustomsFlow(context.createdResources)',
'if (!await ensureReleasedOceanBooking(context, container)) return',
'const slicesPath =',
])
assert.match(value, /oceanBookings\.run\(context\)/)
assert.match(value, /const oceanBookingId = id\(container\?\.oceanBookingId\)/)
assert.match(value, /ocean-bookings\/\$\{encodeURIComponent\(oceanBookingId\)\}/)
assert.match(value, /detail\?\.containers\?\.some/)
assert.doesNotMatch(value, /oceanBookings\.run\(context\)/)
assert.doesNotMatch(value, /serviceCenter\.run\(context\)/)
assert.doesNotMatch(value, /truck\?\.finalStatus !== 'COMPLETED'/)
assert.match(value, /request\('POST', '\/api\/platform\/v1\/suppliers\?tenantId=0'/)