XuqmGroup-RNSDK/packages/xwebview/tests/linkPolicy.test.ts

23 行
652 B
TypeScript

import assert from 'node:assert/strict'
import test from 'node:test'
import { resolveLinkPolicy } from '../src/linkPolicy'
test('link policy keeps web links inside and routes only safe system schemes outside', () => {
assert.deepEqual(resolveLinkPolicy('https://example.test'), {
action: 'allow',
})
assert.deepEqual(resolveLinkPolicy('tel:10086'), {
action: 'external',
})
assert.deepEqual(resolveLinkPolicy('javascript:alert(1)'), {
action: 'deny',
})
assert.deepEqual(resolveLinkPolicy('intent://unsafe'), {
action: 'deny',
})
assert.deepEqual(resolveLinkPolicy('custom://unknown'), {
action: 'deny',
})
})