Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
29 lines
986 B
TypeScript
29 lines
986 B
TypeScript
import type { PIIConfig } from '../../actions/checks/pii';
|
|
import { PIIEntity, createPiiCheckFn } from '../../actions/checks/pii';
|
|
|
|
describe('pii guardrail', () => {
|
|
it('masks detected PII and triggers tripwire', async () => {
|
|
const config: PIIConfig = {
|
|
entities: [PIIEntity.EMAIL_ADDRESS, PIIEntity.US_SSN],
|
|
};
|
|
const text = 'Contact john@example.com SSN: 111-22-3333';
|
|
|
|
const result = await createPiiCheckFn(config)(text);
|
|
|
|
expect(result.tripwireTriggered).toBe(true);
|
|
expect(result.info?.maskEntities?.EMAIL_ADDRESS).toEqual(['john@example.com']);
|
|
expect(result.info?.maskEntities?.US_SSN).toEqual(['111-22-3333']);
|
|
});
|
|
|
|
it('returns no findings on empty input', async () => {
|
|
const config: PIIConfig = {
|
|
entities: [PIIEntity.EMAIL_ADDRESS],
|
|
};
|
|
|
|
const result = await createPiiCheckFn(config)('');
|
|
expect(result.tripwireTriggered).toBe(false);
|
|
expect(result.info?.maskEntities).toEqual({});
|
|
expect(result.info?.analyzerResults).toEqual([]);
|
|
});
|
|
});
|