Repository navigation
REQ 009
Test-SbomArtifact.ps1 shall distinguish, via distinct exit codes, between artifact/build integrity failure (1), vulnerability-policy failure (2), and reporting failure (3), so a caller never mistakes one failure class for another.
A CI consumer needs to react differently (e.g. block a release vs. just warn) depending on which guarantee failed.
Each of the three failure classes is reachable via a real fixture and produces its own distinct, documented exit code.
Real, assertion-based Pester fixture tests: scripts/tests/Test-SbomArtifact.Tests.ps1 constructs a minimal fixture per failure class (and the success path) and asserts the exact resulting ExitCode/Outcome, run in CI by ci-assurance.yml's pester-tests job on every push/PR.
Software-Requirements-Specification
Medium
Real Pester fixture tests, one per failure class, run in CI (ci-assurance.yml's pester-tests job)
Test-SbomArtifact.ps1, scripts/tests/Test-SbomArtifact.Tests.ps1
Verified (automated, real fixtures)