36 lines
1.4 KiB
JavaScript
36 lines
1.4 KiB
JavaScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { readFileSync } from 'node:fs'
|
|
import { resolve } from 'node:path'
|
|
import { parseArguments } from './admin-test-env-acceptance.mjs'
|
|
|
|
const source = readFileSync(resolve('scripts/admin-test-env-acceptance.mjs'), 'utf8')
|
|
|
|
test('phase-four HTTP acceptance modules are registered in the Admin acceptance entry', () => {
|
|
for (const module of [
|
|
'phase4-overseas-warehouse',
|
|
'phase4-overseas-pda',
|
|
'phase4-cross-region-events',
|
|
'phase4-overseas-business',
|
|
'phase4-overseas-master-data',
|
|
'phase4-carrier-nodes',
|
|
]) {
|
|
assert.match(source, new RegExp(`CONFIGURED_MODULES\\s*=\\s*\\[[^\\]]*'${module}'`, 's'))
|
|
}
|
|
})
|
|
|
|
test('entry accepts a separate overseas Gateway without exposing token state', () => {
|
|
const options = parseArguments([
|
|
'--gateway', 'http://localhost:9000/',
|
|
'--overseas-gateway', 'http://localhost:9300/',
|
|
'--modules', 'phase4-overseas-warehouse',
|
|
])
|
|
assert.equal(options.gateway, 'http://localhost:9000')
|
|
assert.equal(options.overseasGateway, 'http://localhost:9300')
|
|
assert.match(source, /this\.overseasToken = login\.overseasAccessToken \|\| ''/)
|
|
assert.match(source, /async requestOverseas\(/)
|
|
assert.match(source, /async requestOverseasBinary\(/)
|
|
assert.match(source, /async requestOverseasMultipart\(/)
|
|
assert.match(source, /forbiddenValues = \[this\.options\.password, this\.token, this\.overseasToken\]/)
|
|
})
|