Skip to main content

Testing

PropertyValue
descriptionTest runners, smoke coverage, and validation workflow for MAC CLI.
relatedMAC CLI, Release, RepoHelpers, AuthHelpers

MAC CLI validation is layered across smoke tests, Pester, script analysis, packaging validation, and a human checklist.

Primary Entry Points

Repo-level runner:

.\mac-cli-test.ps1
.\mac-cli-test.ps1 -RepoHelpers -Quick

Top-level CLI runner:

mac-cli test -RepoHelpers -Quick

Direct validation scripts:

pwsh -NoProfile -File .\scripts\invoke-script-analyzer.ps1
pwsh -NoProfile -File .\scripts\build-release-assets.ps1 -Version v1.0.0 -Validate

Current Validation Layers

RepoHelpers

  • smoke coverage through Invoke-RepoHelpersTests.ps1
  • Pester coverage when Pester 5+ is available
  • help/manual contract checks
  • repo-flow dry-run parsing and output checks

AuthHelpers

  • smoke coverage through Invoke-AuthHelpersSmokeTests.ps1
  • import/export checks
  • readiness, -Dry, -Pass, and provider/profile-path parsing checks

Packaging

  • required-file checks for the module ZIPs and bundle ZIP
  • banned-path checks
  • packaged import verification
  • legacy command leakage rejection

Human Checklist

Manual validation lives in:

  • RepoHelpers/docs/TEST-CHECKLIST.md

Use it when workflow behavior changed materially or before release signoff.

Current Maintainer Rule

If command behavior, test entrypoints, or release validation changes:

  • update the quick docs in the repo
  • update this page
  • update the repo-local .codex validation notes in the same task