fix(acceptance): keep safe fleet metadata clear of sensitive report fields
This commit is contained in:
@@ -519,6 +519,17 @@ test('missing isolated cost actor preparation rejects before readers or fixture
|
||||
assert.equal(touched, false)
|
||||
})
|
||||
|
||||
test('cost actor journal removes credential keys while retaining IDs, roles and boolean removal evidence', async () => {
|
||||
const { fleetCostActorJournalData } = await import('./fleet-test-env-acceptance.mjs')
|
||||
const source = { membershipId: '12', roleIds: ['7'], password: 'actual-secret',
|
||||
nested: { accessToken: 'actual-session', refreshToken: 'actual-refresh', status: 'ACTIVE' } }
|
||||
const result = fleetCostActorJournalData(source)
|
||||
assert.deepEqual(result, { membershipId: '12', roleIds: ['7'], credentialFieldsRemoved: true,
|
||||
nested: { status: 'ACTIVE', credentialFieldsRemoved: true } })
|
||||
assert.doesNotMatch(JSON.stringify(result), /"(?:password|accessToken|refreshToken)"\s*:/)
|
||||
assert.equal(source.nested.accessToken, 'actual-session')
|
||||
})
|
||||
|
||||
for (const failLogin of [false, true]) test(`cost actors create exact isolated roles and disable only owned accounts; login failure=${failLogin}`, async () => {
|
||||
const calls = [], saved = [], roles = [], users = []
|
||||
const context = { marker: 'RUN', token: 'admin-secret', createdResources: {}, async findAvailablePhone() { return '19900000000' },
|
||||
|
||||
Reference in New Issue
Block a user