diff --git a/scripts/admin-test-env-modules/phase4-overseas-pda-operations.mjs b/scripts/admin-test-env-modules/phase4-overseas-pda-operations.mjs index 140d7ea16..b58b6c599 100644 --- a/scripts/admin-test-env-modules/phase4-overseas-pda-operations.mjs +++ b/scripts/admin-test-env-modules/phase4-overseas-pda-operations.mjs @@ -83,7 +83,12 @@ async function fundRelabelWallet(context, customerId) { } async function expectConflict(context, token, method, name, path, body) { - const response = await context.requestOverseas(method, path, body, {}, token) + let response = null + for (let attempt = 1; attempt <= 3; attempt += 1) { + response = await context.requestOverseas(method, path, body, {}, token) + if (response?.http !== 0 || attempt === 3) break + await new Promise((resolve) => setTimeout(resolve, 400 * attempt)) + } context.addStep(MODULE, name, response, conflict(response), trace(response), OPTIONS) return response } @@ -748,7 +753,13 @@ export async function run(context) { } const fixturesByAuxiliaryCapacity = [...handoff.completedFixtures] .sort((left, right) => (right?.auxiliaryPallets?.length || 0) - (left?.auxiliaryPallets?.length || 0)) - const fixture = fixturesByAuxiliaryCapacity.find((item) => Array.isArray(item?.inventory) + const fixture = fixturesByAuxiliaryCapacity.find((item) => item?.destinationType !== 'FBA' + && Array.isArray(item?.inventory) + && item.inventory.some((line) => Number(line?.availablePackages) > 1)) + || fixturesByAuxiliaryCapacity.find((item) => item?.destinationType !== 'FBA' + && Array.isArray(item?.inventory) + && item.inventory.some((line) => Number(line?.availablePackages) > 0)) + || fixturesByAuxiliaryCapacity.find((item) => Array.isArray(item?.inventory) && item.inventory.some((line) => Number(line?.availablePackages) > 1)) || fixturesByAuxiliaryCapacity.find((item) => Array.isArray(item?.inventory) && item.inventory.some((line) => Number(line?.availablePackages) > 0))