Initial commit
This commit is contained in:
31
tests/test_mscp_audit_parse.py
Normal file
31
tests/test_mscp_audit_parse.py
Normal file
@@ -0,0 +1,31 @@
|
||||
import plistlib
|
||||
from pathlib import Path
|
||||
|
||||
from applepy.mscp_audit_parse import parse_audit_plist
|
||||
|
||||
|
||||
def test_parse_audit_plist_per_rule(tmp_path: Path) -> None:
|
||||
plist_path = tmp_path / "org.applepy_mscp.audit.plist"
|
||||
payload = {
|
||||
"lastComplianceCheck": "2026-01-01",
|
||||
"rule_a": {"finding": False},
|
||||
"rule_b": {"finding": True, "exempt": 0},
|
||||
"rule_c": {"finding": True, "exempt": 1},
|
||||
}
|
||||
plist_path.write_bytes(plistlib.dumps(payload))
|
||||
findings = parse_audit_plist(plist_path)
|
||||
ids = {f.id for f in findings}
|
||||
assert "mscp-rule_a" in ids
|
||||
assert "mscp-rule_b" in ids
|
||||
assert "mscp-rule_c" in ids
|
||||
assert len(findings) == 3
|
||||
by_id = {f.id: f for f in findings}
|
||||
assert "rule_a" in by_id["mscp-rule_a"].description
|
||||
assert "compliant" in by_id["mscp-rule_a"].description.lower()
|
||||
assert "rule_b" in by_id["mscp-rule_b"].description
|
||||
assert "non-compliant" in by_id["mscp-rule_b"].description.lower()
|
||||
assert "exempt" in by_id["mscp-rule_c"].description.lower()
|
||||
|
||||
|
||||
def test_parse_missing_plist(tmp_path: Path) -> None:
|
||||
assert parse_audit_plist(tmp_path / "nope.plist") == []
|
||||
Reference in New Issue
Block a user