Title here
Summary here
Target Coverage: 90%+ overall, with specific targets per package. Reference: gh CLI achieves ~80%+ coverage; kubectl ~70%+; we target 90%+ as a premium CLI.
| Package | Current | Target | Priority |
|---|---|---|---|
internal/model/ | ~100% | 100% | Done |
internal/iostreams/ | 0% | 95%+ | Critical |
internal/cmdutil/ | 0% | 95%+ | Critical |
internal/config/ | ~60% | 90%+ | High |
internal/output/ | ~50% | 90%+ | High |
internal/client/ | ~5% | 85%+ | High |
internal/shelly/ | ~40% | 85%+ | High |
internal/plugins/ | ~30% | 80%+ | Medium |
internal/theme/ | ~50% | 80%+ | Medium |
internal/cmd/*/ | ~20% | 80%+ | High |
internal/tui/ | 0% | 75%+ | Medium |
pkg/api/ | 0% | 90%+ | High (public) |
Use charmbracelet/x/exp/teatest for TUI testing:
See: https://github.com/charmbracelet/x/tree/main/exp/teatest
Example:
| |
--help-o json, -o yaml, -o table)--config flaginternal/testutil/ package | |
| |
testing/synctest for time-dependent testssync.WaitGroup.Go() in concurrent test helpers | |