52 lines
1.9 KiB
JavaScript
52 lines
1.9 KiB
JavaScript
|
|
import assert from 'node:assert/strict'
|
||
|
|
import test from 'node:test'
|
||
|
|
|
||
|
|
import {
|
||
|
|
buildAiDocumentDetailRequest,
|
||
|
|
parseAiApplicationDetailHref,
|
||
|
|
parseAiDocumentDetailHref
|
||
|
|
} from '../src/utils/aiDocumentDetailReference.js'
|
||
|
|
|
||
|
|
test('AI detail request keeps business application number out of claimId for legacy links', () => {
|
||
|
|
const detailReference = parseAiApplicationDetailHref('#ai-open-application-detail:AP-202606200001-ABCDEFGH')
|
||
|
|
const request = buildAiDocumentDetailRequest(detailReference)
|
||
|
|
|
||
|
|
assert.deepEqual(detailReference, {
|
||
|
|
reference: 'AP-202606200001-ABCDEFGH',
|
||
|
|
documentType: 'application'
|
||
|
|
})
|
||
|
|
assert.equal(request.id, 'AP-202606200001-ABCDEFGH')
|
||
|
|
assert.equal(request.claimId, '')
|
||
|
|
assert.equal(request.claimNo, 'AP-202606200001-ABCDEFGH')
|
||
|
|
assert.equal(request.documentNo, 'AP-202606200001-ABCDEFGH')
|
||
|
|
assert.equal(request.documentTypeCode, 'application')
|
||
|
|
assert.equal(request.detailLookupOnly, true)
|
||
|
|
})
|
||
|
|
|
||
|
|
test('AI detail request uses explicit claim_id as lookup identity', () => {
|
||
|
|
const detailReference = parseAiDocumentDetailHref(
|
||
|
|
'#ai-open-document-detail:claim_id%3Dapproval-1%26claim_no%3DAP-APPROVAL-001'
|
||
|
|
)
|
||
|
|
const request = buildAiDocumentDetailRequest(detailReference)
|
||
|
|
|
||
|
|
assert.deepEqual(detailReference, {
|
||
|
|
reference: 'AP-APPROVAL-001',
|
||
|
|
claimId: 'approval-1',
|
||
|
|
claimNo: 'AP-APPROVAL-001'
|
||
|
|
})
|
||
|
|
assert.equal(request.id, 'approval-1')
|
||
|
|
assert.equal(request.claimId, 'approval-1')
|
||
|
|
assert.equal(request.claimNo, 'AP-APPROVAL-001')
|
||
|
|
assert.equal(request.documentNo, 'AP-APPROVAL-001')
|
||
|
|
assert.equal(request.documentTypeCode, 'application')
|
||
|
|
})
|
||
|
|
|
||
|
|
test('AI detail request treats non-number references as internal claim ids', () => {
|
||
|
|
const request = buildAiDocumentDetailRequest({ reference: 'approval-internal-id' })
|
||
|
|
|
||
|
|
assert.equal(request.id, 'approval-internal-id')
|
||
|
|
assert.equal(request.claimId, 'approval-internal-id')
|
||
|
|
assert.equal(request.claimNo, '')
|
||
|
|
assert.equal(request.documentNo, 'approval-internal-id')
|
||
|
|
})
|