test(phase3): finalize loading before split acceptance
This commit is contained in:
@@ -43,17 +43,22 @@ export function normalizeModuleOrder(modules) {
|
||||
}
|
||||
}
|
||||
if (normalized.includes('phase3-order-splitting')) {
|
||||
const prerequisites = ['merchant-qualification-fixture', 'phase3-container-loading', 'phase3-loading']
|
||||
const prerequisites = [
|
||||
'merchant-qualification-fixture',
|
||||
'phase3-container-loading',
|
||||
'phase3-loading',
|
||||
'phase3-loading-finalize',
|
||||
]
|
||||
for (const prerequisite of prerequisites) {
|
||||
if (!normalized.includes(prerequisite)) {
|
||||
normalized.splice(normalized.indexOf('phase3-order-splitting'), 0, prerequisite)
|
||||
}
|
||||
}
|
||||
const splitIndex = normalized.indexOf('phase3-order-splitting')
|
||||
const loadingIndex = normalized.indexOf('phase3-loading')
|
||||
if (splitIndex < loadingIndex) {
|
||||
const finalizeIndex = normalized.indexOf('phase3-loading-finalize')
|
||||
if (splitIndex < finalizeIndex) {
|
||||
normalized.splice(splitIndex, 1)
|
||||
normalized.splice(normalized.indexOf('phase3-loading') + 1, 0, 'phase3-order-splitting')
|
||||
normalized.splice(normalized.indexOf('phase3-loading-finalize') + 1, 0, 'phase3-order-splitting')
|
||||
}
|
||||
}
|
||||
const financeChain = ['finance-full-fixtures', 'finance-reconciliation-full', 'finance-settlement-full']
|
||||
|
||||
@@ -150,6 +150,15 @@ test('default Admin HTTP entry completes settlement before customs consumes load
|
||||
assert.doesNotMatch(finalize, /truck\?\.finalStatus === 'COMPLETED'/)
|
||||
})
|
||||
|
||||
test('focused order splitting completes the initial loading settlement first', () => {
|
||||
const focused = normalizeModuleOrder(['phase3-order-splitting'])
|
||||
const loading = focused.indexOf('phase3-loading')
|
||||
const finalize = focused.indexOf('phase3-loading-finalize')
|
||||
const splitting = focused.indexOf('phase3-order-splitting')
|
||||
|
||||
assert.ok(loading >= 0 && finalize > loading && splitting > finalize)
|
||||
})
|
||||
|
||||
test('Finance-only HTTP entry expands producer prerequisites and runs downloads last', () => {
|
||||
const focused = normalizeModuleOrder(['finance-downloads', 'finance-settlement-full'])
|
||||
assert.deepEqual(focused.slice(0, 4), [
|
||||
|
||||
Reference in New Issue
Block a user