test(acceptance): reconcile dropship runtime facts

This commit is contained in:
2026-09-09 02:40:42 +08:00
parent 4ccdae0665
commit 41225248d0
14 changed files with 108 additions and 41 deletions
@@ -28,6 +28,7 @@ test('PDA operations run immediately after receiving and all later consumers dep
test('receiving hands off only transient credentials and completed warehouse facts', () => {
assert.match(receivingSource, /context\.context\.phase4OverseasPdaOperations = \{/)
assert.match(receivingSource, /completedFixtures: \[\]/)
assert.match(receivingSource, /merchantToken,/)
assert.match(receivingSource, /if \(!handoffReady\) \{[\s\S]*await cleanup\(\)/)
assert.doesNotMatch(receivingSource, /createdResources\.phase4OverseasPdaOperations/)
assert.doesNotMatch(receivingSource, /primary: primary \? \{[^}]*password/)
@@ -47,6 +48,8 @@ test('P2 to P5 cover all frozen endpoints, replays and conflict boundaries witho
for (const marker of ['按原数计数', '同键重放', '同键异载荷A0409', '旧版本A0409',
'SUBMITTED', '移回原库位', 'WAIT_REVIEW', 'REWORK', 'APPROVE', 'COMPLETED',
'chargeAmount: 0.01', 'cartonMark:', 'fbaCartonMark:',
'inventory-candidates', 'sourceInventoryBalanceId:', 'sourceInventoryPositionId:',
'sourceInboundOrderId:', 'operationWarehouseId:',
'P5换标费用冻结后开放PDA作业', 'P5换标完成后钱包结算收敛']) {
assert.ok(source.includes(marker), marker)
}
@@ -78,6 +81,7 @@ test('fixture failure still disables both picker accounts and removes all transi
marker: 'PDAOPS-CONTRACT',
primary: { membershipId: '1', username: 'primary', token: 'primary-secret-token' },
secondary: { membershipId: '2', username: 'secondary', token: 'secondary-secret-token' },
merchantToken: 'merchant-secret-token',
completedFixtures: [],
async cleanup() { cleanups.push('secondary', 'primary') },
}
@@ -95,6 +99,7 @@ test('fixture failure still disables both picker accounts and removes all transi
assert.deepEqual(cleanups, ['secondary', 'primary'])
assert.equal(handoff.primary.token, undefined)
assert.equal(handoff.secondary.token, undefined)
assert.equal(handoff.merchantToken, undefined)
assert.equal(context.context.phase4OverseasPdaOperations, undefined)
assert.ok(gaps.some((gap) => gap[2] === 'P2-P5本轮PDA收货交接'))
assert.ok(steps.some((step) => !step.passed && step.options?.deploymentBlocker))