diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-23 01:07:52 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-23 01:07:52 -0500 |
| commit | eaa2691ce3a8dab792dc6ad13c92a8fc249e973f (patch) | |
| tree | 40df39d8e1ccc6ca3bee08e70692a46341b79780 /modules/custom-comments.el | |
| parent | e66998d6903ceb5e35527391f5085887ddcd08cf (diff) | |
| download | dotemacs-eaa2691ce3a8dab792dc6ad13c92a8fc249e973f.tar.gz dotemacs-eaa2691ce3a8dab792dc6ad13c92a8fc249e973f.zip | |
feat(coverage): add format-report helper for the report buffer
Pure helper that renders intersect records into the text shown in the coverage report buffer. Takes the list of per-file plists from cj/--coverage-intersect and a scope label, returns the formatted string.
Output has three sections depending on what's present:
- "Uncovered lines" — one line per uncovered line, formatted as "<path>:<line>: uncovered" so compilation-mode's default regex picks them up for next-error navigation.
- "Not tracked" — files changed in the diff but absent from the coverage data (READMEs, test files, config).
- "Fully covered" — tracked files where every changed line is covered.
Files with empty :changed-lines (deletion-only hunks) are omitted. Summary counts cover only tracked files, so an all-README change shows "0 of 0" rather than a misleading percentage over nothing.
Tests cover Normal (partial, fully covered, mixed sections), Boundary (empty records, 100% coverage with no uncovered section, only-not-tracked case, deletion-only exclusion), and the output format that next-error relies on.
Diffstat (limited to 'modules/custom-comments.el')
0 files changed, 0 insertions, 0 deletions
