From f018ca85a9ab2442b776ea86826d14ac4faa06ff Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Mon, 7 Sep 2026 21:26:03 +0800 Subject: [PATCH] test(overseas): retain marker merchant fixture --- scripts/admin-test-env-acceptance.mjs | 9 ++++++++- ...phase4-overseas-client-services-contract.test.mjs | 12 ++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/scripts/admin-test-env-acceptance.mjs b/scripts/admin-test-env-acceptance.mjs index aed1f6802..1f4419fcb 100644 --- a/scripts/admin-test-env-acceptance.mjs +++ b/scripts/admin-test-env-acceptance.mjs @@ -328,7 +328,14 @@ export function parseArguments(argv) { const modules = normalizeModuleOrder(requestedModules) const merchantUsername = values.get('merchant-username') || process.env.MERCHANT_TEST_USERNAME || '' const merchantPassword = values.get('merchant-password') || process.env.MERCHANT_TEST_PASSWORD || '' - if (merchantUsername && merchantPassword && !modules.includes('phase4-overseas-business')) { + const requiresMarkerOwnedMerchantFixture = [ + 'phase4-overseas-business', + 'phase4-overseas-client-services', + 'phase5-overseas-fulfillment', + 'phase4-overseas-finance-cross-region', + 'phase4-overseas-wallet-and-pallet-cost', + ].some((module) => modules.includes(module)) + if (merchantUsername && merchantPassword && !requiresMarkerOwnedMerchantFixture) { const fixtureIndex = modules.indexOf('merchant-qualification-fixture') if (fixtureIndex >= 0) modules.splice(fixtureIndex, 1) } diff --git a/scripts/admin-test-env-modules/phase4-overseas-client-services-contract.test.mjs b/scripts/admin-test-env-modules/phase4-overseas-client-services-contract.test.mjs index 69bc6e35d..2bc394173 100644 --- a/scripts/admin-test-env-modules/phase4-overseas-client-services-contract.test.mjs +++ b/scripts/admin-test-env-modules/phase4-overseas-client-services-contract.test.mjs @@ -2,6 +2,7 @@ import test from 'node:test' import assert from 'node:assert/strict' import { readFile } from 'node:fs/promises' import { fileURLToPath } from 'node:url' +import { parseArguments } from '../admin-test-env-acceptance.mjs' const source = await readFile(fileURLToPath(new URL('./phase4-overseas-client-services.mjs', import.meta.url)), 'utf8') @@ -57,3 +58,14 @@ test('module records marker-owned resources without forbidden fulfillment cleanu assert.match(source, /discardNo = discardNo/) assert.match(source, /no outbound, dispatch, PDA or delivery action is invoked/) }) + +test('focused client services keeps the marker-owned merchant fixture when reusable credentials exist', () => { + const parsed = parseArguments([ + '--modules', 'phase4-overseas-client-services', + '--merchant-username', 'existing-merchant', + '--merchant-password', 'existing-password', + ]) + const fixture = parsed.modules.indexOf('merchant-qualification-fixture') + const clientServices = parsed.modules.indexOf('phase4-overseas-client-services') + assert.ok(fixture >= 0 && fixture < clientServices) +})