diff options
Diffstat (limited to 'todo.org')
| -rw-r--r-- | todo.org | 336 |
1 files changed, 18 insertions, 318 deletions
@@ -5022,334 +5022,34 @@ from SimpleCov entirely. For missing modules, first decide whether the file has testable project logic; if it is just use-package/keybinding glue, document it as intentionally low-value instead of forcing brittle tests. -*** TODO [#B] Add coverage for =prog-python.el= (0.0%, 0/20) :tests: +*** 2026-05-24 Sun @ 15:40 Refreshed against a clean make-coverage run -Focus on formatter/setup helpers and any Python command-building logic. Avoid -testing Emacs package glue directly; split pure helpers first if needed. +The per-module percentages previously listed here were stale. This session's test-writing covered most of the originally-listed modules: =prog-python= 0%→100%, =hugo-config= 17.7%→91.7%, =undead-buffers= 5.7%→85.7%, and =selection-framework=, =keyboard-compat=, =system-utils=, =system-defaults=, =ui-navigation=, =prog-go= now sit at ~100%. Re-measured against a clean =make coverage=; only modules genuinely below ~60% remain below as gaps, with current numbers. Modules in the 60-80% band (e.g. =calendar-sync= 76%, =music-config= 77%, =ai-conversations= 74%, =calibredb-epub-config= 73%, =org-noter-config= 73%, =custom-misc= 72%, =test-runner= 72%) are adequately covered and dropped from the backlog. Several remaining low entries are low only because the uncovered lines are use-package / interactive / process glue, not untested logic — flagged inline. -*** TODO [#B] Add coverage for =selection-framework.el= (0.0%, 0/3) :tests: +*** TODO [#B] Add coverage for =markdown-config.el= (0.0%, 0/14) :tests: +Pure seam: =cj/markdown-html= (buffer → HTML for impatient-mode). The preview/server commands are interactive httpd glue — test the HTML builder, leave the rest as interactive-only. -Add a smoke test for the final binding/setup behavior or document why the three -instrumented lines are configuration-only. +*** TODO [#B] Add coverage for =prog-general.el= (10.0%, 1/10) :tests: +Mostly LSP/use-package config. Check for a pure helper; otherwise close as config-only. -*** TODO [#B] Add coverage for =keyboard-compat.el= (3.4%, 1/29) :tests: +*** TODO [#B] Add coverage for =flyspell-and-abbrev.el= (40.7%, 22/54) :tests: +Look for abbrev-table / spell-helper logic worth covering. -Cover terminal-vs-GUI translation predicates and key normalization paths. Keep -tests table-driven so future terminal quirks are easy to add. +*** TODO [#B] Add coverage for =dashboard-config.el= (47.7%, 21/44) :tests: +Launcher dispatch is partly tested; check the remaining banner/section builders. -*** TODO [#B] Add coverage for =prog-webdev.el= (4.8%, 1/21) :tests: +*** TODO [#B] Add coverage for =restclient-config.el= (50.0%, 4/8) :tests: +Small; check the non-interactive helpers. -Cover formatter wiring and web-mode helper behavior without invoking external -formatters. +*** TODO [#B] Add coverage for =ai-quick-ask.el= (50.0%, 28/56) :tests: +Check prompt-assembly / response-handling helpers. -*** TODO [#B] Add coverage for =system-defaults.el= (8.3%, 1/12) :tests: +*** TODO [#B] Add coverage for =media-utils.el= (59.0%, 49/83) :tests: +Remaining gap is =cj/select-media-player= (interactive) and =cj/media-play-it= process-sentinel branches. Add a select-media-player smoke test and sentinel-branch coverage if feasible. -Characterize the platform/default-setting helpers with stubs around system -calls. Do not assert machine-specific defaults directly. +*** =vc-config.el= (7.9%) and =quick-video-capture.el= (50%) — config/interactive-only, no action +Their pure logic is already tested (git-clone path derivation; the video URL dynamic-binding + capture-template registration). The uncovered lines are magit/difftastic/git-timemachine config and interactive toggles, not testable logic. -*** TODO [#B] Add coverage for =ui-navigation.el= (8.7%, 4/46) :tests: - -Extend the existing window-resize tests to cover navigation commands, -window-selection behavior, and boundary cases around missing/side windows. - -*** TODO [#B] Add coverage for =prog-go.el= (11.1%, 3/27) :tests: - -Cover Go formatting/test command wiring and any path/build helper behavior with -external commands stubbed. - -*** TODO [#B] Add coverage for =system-commands.el= (12.2%, 6/49) :tests: - -Cover shell command wrapper construction, missing executable behavior, and -interactive command smoke paths with process execution stubbed. - -*** TODO [#B] Add coverage for =external-open.el= (15.2%, 5/33) :tests: - -The library helpers already have some coverage; add smoke/characterization tests -for user-facing open commands and error paths while stubbing launcher calls. - -*** TODO [#B] Add coverage for =org-webclipper.el= (16.9%, 10/59) :tests: - -Cover URL/content parsing, manual URL prompt behavior, protocol URL handling, -and aborted capture cleanup. - -*** TODO [#B] Add coverage for =system-utils.el= (19.2%, 5/26) :tests: - -Review remaining utilities not covered by =eval-buffer= tests. Add focused -Normal/Boundary/Error tests for pure helpers; stub process/system calls. - -*** TODO [#B] Add coverage for =org-reveal-config.el= (20.0%, 9/45) :tests: - -Extend existing header-template/title tests to cover export command setup and -option-building helpers. - -*** TODO [#B] Add coverage for =coverage-elisp.el= (26.3%, 5/19) :tests: - -The detector is covered; add tests for report-path/project-root behavior and a -stubbed run callback path if it can be tested without launching compilation. - -*** TODO [#B] Add coverage for =org-noter-config.el= (27.3%, 27/99) :tests: - -Build on the existing predicate/template tests. Target note-file placement, -preferred split behavior, and interactive wrapper smoke tests. - -*** TODO [#B] Add coverage for =ai-config.el= (27.7%, 53/191) :tests: - -Prioritize model/backend selection edge cases, gptel local-tool registration, -and command helpers. Stub network/model calls. - -*** TODO [#B] Add coverage for =dirvish-config.el= (30.4%, 48/158) :tests: - -Existing utility tests cover several helpers. Add focused coverage for remaining -playlist/quick-access/display-path branches and document config-only areas. - -*** TODO [#B] Add coverage for =slack-config.el= (32.0%, 24/75) :tests: - -Extend reaction workflow coverage to message lookup, workspace/account -configuration, and command error handling with Slack APIs stubbed. - -*** TODO [#B] Add coverage for =org-roam-config.el= (32.5%, 26/80) :tests: - -Extend existing slug/demote/link tests to cover TODO copy behavior, capture -helpers, and file/path boundary cases. - -*** TODO [#B] Add coverage for =custom-text-enclose.el= (35.2%, 51/145) :tests: - -Many wrappers are tested, but coverage is still low. Identify untested commands -and add table-driven region/buffer boundary cases. - -*** TODO [#B] Add coverage for =hugo-config.el= (39.6%, 38/96) :tests: - -Extend metadata/template tests to draft collection, path derivation, and command -wrapper behavior with file/process calls stubbed. - -*** TODO [#B] Add coverage for =org-refile-config.el= (41.2%, 21/51) :tests: - -Build on target-building tests. Cover org-mode enforcement, missing files, and -refile target edge cases. - -*** TODO [#B] Add coverage for =org-contacts-config.el= (45.6%, 36/79) :tests: - -Extend email parsing/finalize tests to contact lookup, capture field handling, -and malformed contact data. - -*** TODO [#B] Add coverage for =transcription-config.el= (46.3%, 75/162) :tests: - -Existing helper tests are strong; add start/stop/process lifecycle tests with -process creation and sentinels stubbed. - -*** TODO [#B] Add coverage for =music-config.el= (46.8%, 130/278) :tests: - -Coverage is broad but below 50%. Target remaining playlist mutation, -navigation, and MPD side-effect paths with process calls stubbed. - -*** TODO [#B] Add coverage for =mail-config.el= (47.4%, 9/19) :tests: - -Transport helpers are covered. Add smoke tests for account context data, -maildir shortcuts, bookmarks, and safe command setup without sending mail. - -*** TODO [#B] Add or triage first coverage for =ai-conversations.el= (missing from SimpleCov) :tests: - -High-value missing module. Cover gptel persistence, autosave path selection, and -load/save error behavior with filesystem calls isolated. - -*** TODO [#B] Add or triage first coverage for =auth-config.el= (missing from SimpleCov) :tests: - -Review for testable cache/debug helpers versus package glue. Add tests for -helpers; document any config-only surface as intentionally untested. - -*** TODO [#B] Add or triage first coverage for =calibredb-epub-config.el= (missing from SimpleCov) :tests: - -Review EPUB preference helpers and calibredb/nov hooks. Add tests around pure -helpers; avoid brittle package-load assertions. - -*** TODO [#B] Add or triage first coverage for =chrono-tools.el= (missing from SimpleCov) :tests: - -Identify date/time helpers and command formatting logic. Add deterministic tests -with current time stubbed. - -*** TODO [#B] Add or triage first coverage for =dashboard-config.el= (missing from SimpleCov) :tests: - -Cover custom dashboard commands such as single-window/dashboard-only behavior -with buffer/window operations isolated. - -*** TODO [#B] Triage =diff-config.el= as missing from SimpleCov :tests: - -Mostly likely package/keybinding glue. Add tests only for local helper logic; if -none exists, document as no unit tests appropriate. - -*** TODO [#B] Add or triage first coverage for =dwim-shell-config.el= (missing from SimpleCov) :tests: - -Review DWIM shell command selection and buffer/process helpers. Stub shell -launches and cover fallback/error cases. - -*** TODO [#B] Triage =elfeed-config.el= as missing from SimpleCov :tests: - -Check for project-owned feed/search helpers. If it is only elfeed setup, -document as low-value for unit coverage. - -*** TODO [#B] Triage =erc-config.el= as missing from SimpleCov :tests: - -Check for local IRC command helpers. If the file is package setup only, document -as intentionally untested. - -*** TODO [#B] Add or triage first coverage for =eshell-config.el= (missing from SimpleCov) :tests: - -Cover local eshell helper functions and command aliases where possible. Avoid -tests that depend on a live shell session. - -*** TODO [#B] Triage =eww-config.el= as missing from SimpleCov :tests: - -Review for local URL/browser helpers. If configuration-only, document as -low-value for unit coverage. - -*** TODO [#B] Triage =flycheck-config.el= as missing from SimpleCov :tests: - -Prefer testing only project-owned predicate/setup helpers. Do not test flycheck -package internals. - -*** TODO [#B] Triage =flyspell-and-abbrev.el= as missing from SimpleCov :tests: - -Look for local dictionary/abbrev helpers. If the file only wires modes/hooks, -document that no unit tests are appropriate. - -*** TODO [#B] Triage =font-config.el= as missing from SimpleCov :tests: - -Check for font-selection helpers; otherwise classify as environment-specific UI -configuration. - -*** TODO [#B] Triage =games-config.el= as missing from SimpleCov :tests: - -Check for project-owned game command wrappers. If it is only package setup, -document as low-value. - -*** TODO [#B] Add or triage first coverage for =gloss-config.el= (missing from SimpleCov) :tests: - -Review glossary lookup/parsing helpers. Add pure tests where possible and smoke -test interactive commands with completion stubbed. - -*** TODO [#B] Add or triage first coverage for =help-config.el= (missing from SimpleCov) :tests: - -High-value missing module from the original audit. Cover interactive help lookup -commands and buffer-selection behavior with display functions stubbed. - -*** TODO [#B] Add or triage first coverage for =help-utils.el= (missing from SimpleCov) :tests: - -High-value missing module. Cover lookup/formatting helpers and error behavior -for unknown symbols/topics. - -*** TODO [#B] Triage =httpd-config.el= as missing from SimpleCov :tests: - -Check for local server helpers. If it only configures simple-httpd, document as -configuration-only. - -*** TODO [#B] Triage =latex-config.el= as missing from SimpleCov :tests: - -Review for local compile/view helper logic. Avoid asserting package setup unless -there are project-owned predicates. - -*** TODO [#B] Triage =ledger-config.el= as missing from SimpleCov :tests: - -Check for project-owned ledger helpers; otherwise document as mode setup. - -*** TODO [#B] Add or triage first coverage for =local-repository.el= (missing from SimpleCov) :tests: - -Review repository path/discovery helpers and add filesystem-backed tempdir tests -for meaningful local logic. - -*** TODO [#B] Triage =markdown-config.el= as missing from SimpleCov :tests: - -Check for local markdown command helpers. If it is only mode configuration, -document as no unit tests appropriate. - -*** TODO [#B] Add or triage first coverage for =media-utils.el= (missing from SimpleCov) :tests: - -Original audit called this out with process boundaries. Cover launcher/command -selection helpers with external commands stubbed. - -*** TODO [#B] Add or triage first coverage for =mu4e-org-contacts-integration.el= (missing from SimpleCov) :tests: - -Cover contact lookup/insert integration with mu4e and org-contacts calls -stubbed. - -*** TODO [#B] Add or triage first coverage for =mu4e-org-contacts-setup.el= (missing from SimpleCov) :tests: - -Cover setup helpers and contact field defaults where project-owned logic exists. - -*** TODO [#B] Triage =org-agenda-config-debug.el= as missing from SimpleCov :tests: - -Check for debug helper functions worth testing. If it is ad-hoc diagnostics, -document as low-value. - -*** TODO [#B] Triage =org-babel-config.el= as missing from SimpleCov :tests: - -Review for project-owned org-babel helper logic. Avoid tests that only assert -language registration. - -*** TODO [#B] Triage =org-drill-config.el= as missing from SimpleCov :tests: - -Check for local drill helpers beyond package setup. Add characterization tests -only for those helpers. - -*** TODO [#B] Triage =org-export-config.el= as missing from SimpleCov :tests: - -Review export option/path helpers. If configuration-only, document as no unit -tests appropriate. - -*** TODO [#B] Triage =pdf-config.el= as missing from SimpleCov :tests: - -Check for local PDF helper commands. Avoid tests tied to external PDF tools -unless command construction can be isolated. - -*** TODO [#B] Triage =popper-config.el= as missing from SimpleCov :tests: - -Review popup classification helpers. Add tests for predicates; document pure -package setup as intentionally untested. - -*** TODO [#B] Triage =prog-general.el= as missing from SimpleCov :tests: - -Check for local development command helpers beyond global key setup. Add tests -only for project-owned logic. - -*** TODO [#B] Triage =prog-lisp.el= as missing from SimpleCov :tests: - -Review Lisp-mode helper behavior. If it is only hooks/mode setup, document as -low-value. - -*** TODO [#B] Triage =prog-training.el= as missing from SimpleCov :tests: - -Check for exercise/training command helpers and add characterization tests if -present. - -*** TODO [#B] Add or triage first coverage for =quick-video-capture.el= (missing from SimpleCov) :tests: - -High-value missing module. Cover yt-dlp queue behavior, org-protocol handling, -URL parsing, and process error paths with external commands stubbed. - -*** TODO [#B] Add or triage first coverage for =show-kill-ring.el= (missing from SimpleCov) :tests: - -High-value missing module. Cover kill-ring formatting, selection behavior, and -empty-ring boundaries. - -*** TODO [#B] Triage =text-config.el= as missing from SimpleCov :tests: - -Review for local text helper commands. If it only configures packages/hooks, -document as no unit tests appropriate. - -*** TODO [#B] Triage =tramp-config.el= as missing from SimpleCov :tests: - -Check for local TRAMP path helpers. Avoid tests requiring remote connections. - -*** TODO [#B] Add or triage first coverage for =vc-config.el= (missing from SimpleCov) :tests: - -Review project-owned VC helpers and command wrappers. Stub git/process calls. - -*** TODO [#B] Triage =weather-config.el= as missing from SimpleCov :tests: - -Check for request/format helpers. Avoid live network tests; stub weather calls. - -*** TODO [#B] Add or triage first coverage for =wrap-up.el= (missing from SimpleCov) :tests: - -Cover init-finalize helpers and post-startup behavior with hooks/timers stubbed. ** DONE [#B] Review all config and pull library functions into system-lib file :refactor: Superseded by =PROJECT [#B] Consolidate shared utility helpers= (the structured version of this, with =docs/design/utility-consolidation.org= as the spec and =docs/design/utility-inventory.org= as the config-wide audit -- 30 candidate helpers across all modules, decided 11 Migrate / 3 Leave / 13 Defer). The system-lib extractions shipped 2026-05-10: =c75e36f= (=cj/executable-find-or-warn= from mail-config), =f1e8f08= (=cj/shell-quote-argument-readable= from dev-fkeys), =57e558c= (=cj/process-output-or-error= + =cj/git-output-or-error= from coverage-core), =aa72245= (=cj/file-from-context= from system-utils), plus the earlier =8e8152e= (=cj/log-silently=) -- each with its own test file. The rest of the 11 Migrate items landed as new =-lib.el= modules in the same marathon (=cj-cache-lib.el=, =cj-org-text-lib.el=, =external-open-lib.el=, =cj-window-geometry-lib.el=, =cj-window-toggle-lib.el=). The 13 deferred candidates remain tracked under the Consolidate-shared-utility-helpers PROJECT, not here. ** DONE [#C] Clean up calibredb-epub-config.el :refactor:bug: |
