test(firstleg): decouple PDA completion from truck
This commit is contained in:
@@ -140,6 +140,22 @@ test('late container gate mode proves the final gate without requiring evidence
|
||||
assert.match(value, /nextStage === 'CABINET_EVIDENCE' && nextCode === 'A0409'/)
|
||||
assert.match(value, /!nextMessage\.includes\('集装箱号'\)/)
|
||||
assert.match(value, /context\.createdResources\.phase3LateContainerGate/)
|
||||
assert.match(value, /独立柜未创建拖车单也不阻塞 PDA 装柜完成命令/)
|
||||
})
|
||||
|
||||
test('PDA completion production and HTTP chain never call or gate on truck appointments', () => {
|
||||
const service = source('../../firstleg/src/main/java/com/baiyue/firstleg/service/LoadingPickService.java')
|
||||
const serviceTest = source('../../firstleg/src/test/java/com/baiyue/firstleg/service/LoadingPickServiceTest.java')
|
||||
const loading = source('./phase3-loading.mjs')
|
||||
assert.doesNotMatch(service, /TruckAppointmentService|completeLoadingFromPda|completeTruckAfterCommit/)
|
||||
assert.match(serviceTest, /completionWorkerIsIndependentOfEveryTruckAppointmentState/)
|
||||
for (const state of ['NO_APPOINTMENT', 'DRAFT', 'IN_PROGRESS', 'COMPLETED']) {
|
||||
assert.match(serviceTest, new RegExp(state))
|
||||
}
|
||||
assert.match(serviceTest, /failedSameOperationIdCanResumeWithoutCreatingAnotherCommand[\s\S]*assertNoTruckCoupling/)
|
||||
assert.match(serviceTest, /secondCustomerOwnerReadyFailureLeavesEveryOwnerUnsettledAndUncompleted[\s\S]*assertNoTruckCoupling/)
|
||||
assert.match(serviceTest, /workerRestartResumesFromOwnerCheckpointsWithoutRepeatingSettlements[\s\S]*assertNoTruckCoupling/)
|
||||
assert.doesNotMatch(loading, /\/truck-appointments|completeLoadingFromPda/)
|
||||
})
|
||||
|
||||
test('push replay and both conflict modes preserve the complete pre-PDA snapshot', () => {
|
||||
|
||||
Reference in New Issue
Block a user