From e2f373ff05116d4b2ed48d4ddcaea8c47846f105 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 30 Apr 2026 10:30:32 -0500 Subject: test(prog): drop ignore-errors on prog-module require, add featurep check Two small tightening passes on the formatter wiring tests just shipped. Drops `(ignore-errors ...)` from each test file's `(require 'prog-PKG)' call. Soft use-package warnings (e.g. lsp-pyright not being installed) still emit messages without aborting the load. A hard load failure (syntax error, missing required dep) would now surface as a test error rather than being silently swallowed. Adds a `(should (featurep PKG))' assertion per language so the test output makes "package loaded" visible alongside the fboundp and binding checks. For webdev the assertion is `(featurep 'prog-webdev)' since the formatter command is defined directly in prog-webdev.el (it shells out to the prettier CLI, no separate package to load). 17 tests total now (up from 13), all passing. --- tests/test-prog-shell--format-wiring.el | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'tests/test-prog-shell--format-wiring.el') diff --git a/tests/test-prog-shell--format-wiring.el b/tests/test-prog-shell--format-wiring.el index 4a014943..604a1f26 100644 --- a/tests/test-prog-shell--format-wiring.el +++ b/tests/test-prog-shell--format-wiring.el @@ -25,10 +25,17 @@ ;; the map into existence by referencing the mode definition. When ;; tree-sitter isn't built in, bash-ts-mode is still defined as a ;; symbol via define-derived-mode, and its keymap exists. -(ignore-errors (require 'prog-shell)) +(require 'prog-shell) (when (executable-find "shfmt") (require 'shfmt)) +(ert-deftest test-prog-shell-format-package-loaded () + "Normal: `shfmt' is in `features' when the executable is on PATH. +Skipped when shfmt isn't installed because the use-package gates on +`:if (executable-find shfmt-path)' and never loads the package." + (format-test--skip-unless-executable "shfmt") + (should (featurep 'shfmt))) + (ert-deftest test-prog-shell-format-command-fboundp () "Normal: `shfmt-buffer' is fboundp after shfmt loads. Skipped when shfmt isn't installed because the use-package gates on -- cgit v1.2.3