TenantAtlas/tests/Unit/AuditContextSanitizerTest.php
ahmido 53dc89e6ef Spec 075: Verification Checklist Framework V1.5 (fingerprint + acknowledgements) (#93)
Implements Spec 075 (V1.5) on top of Spec 074.

Highlights
- Deterministic report fingerprint (sha256) + previous_report_id linkage
- Viewer change indicator: "No changes" vs "Changed" when previous exists
- Check acknowledgements (fail|warn|block) with capability-first auth, confirmation, and audit event
- Verify-step UX polish (issues-first, primary CTA)

Testing
- Focused Pest coverage for fingerprint, previous resolver, change indicator, acknowledgements, badge semantics, DB-only viewer guard.

Notes
- Viewing remains DB-only (no external calls while rendering).

Co-authored-by: Ahmed Darrazi <ahmeddarrazi@MacBookPro.fritz.box>
Reviewed-on: #93
2026-02-05 21:44:19 +00:00

21 lines
606 B
PHP

<?php
declare(strict_types=1);
use App\Support\Audit\AuditContextSanitizer;
it('does not redact dot-separated flow identifiers', function (): void {
expect(AuditContextSanitizer::sanitize('provider.connection.check'))
->toBe('provider.connection.check');
});
it('redacts jwt-like strings', function (): void {
$jwt = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.'
.'eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.'
.'SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c';
expect(AuditContextSanitizer::sanitize($jwt))
->toBe('[REDACTED]');
});