| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- from pathlib import Path
- ROOT = Path(__file__).resolve().parents[2]
- def test_audit_workbench_exposes_security_coverage_events_and_seals():
- view = (
- ROOT / "frontend/src/views/systemManage/governanceAudit/index.vue"
- ).read_text(encoding="utf-8")
- api = (
- ROOT / "frontend/src/api/governanceAudit.js"
- ).read_text(encoding="utf-8")
- routes = (
- ROOT / "frontend/src/router/routes.js"
- ).read_text(encoding="utf-8")
- for text in (
- "审计与运行证据",
- "安全检查",
- "关键操作覆盖",
- "审计事件",
- "证据封存",
- "独立封存密钥已配置",
- "签名封存用于检测篡改,不等于阻止数据库管理员修改",
- ):
- assert text in view
- for path in (
- "/system/governance-audit/security-checks",
- "/system/governance-audit/coverage",
- "/system/governance-audit/events",
- "/system/governance-audit/seals",
- "/verify",
- ):
- assert path in api
- assert "systemManage/governanceAudit" in routes
- assert "governance-audit:read" in routes
- assert "governance-audit:seal" in routes
- def test_audit_workbench_never_requests_or_renders_unsafe_columns():
- view = (
- ROOT / "frontend/src/views/systemManage/governanceAudit/index.vue"
- ).read_text(encoding="utf-8")
- model = (
- ROOT
- / "frontend/src/views/systemManage/governanceAudit/"
- "governanceAuditModel.js"
- ).read_text(encoding="utf-8")
- combined = view + model
- for forbidden in (
- "ip_address",
- "user_agent",
- "raw_question",
- "remediation_note",
- "evidence_payload",
- "source_config",
- "encrypted_payload",
- ):
- assert forbidden not in combined
|