From 4cc3010a2bf5e08ed95475c3d7671fd1801deaa3 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 28 Jun 2026 23:17:32 -0400 Subject: fix(music): define the playlist-header faces The route-colors pass dropped the literal cj/music-* face definitions but left the playlist header referencing them, so every header render spammed "Invalid face reference". I restored the five as deffaces that inherit themed base faces, so the theme still owns their colors. A test asserts each referenced face is defined. --- tests/test-music-config--faces.el | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 tests/test-music-config--faces.el (limited to 'tests') diff --git a/tests/test-music-config--faces.el b/tests/test-music-config--faces.el new file mode 100644 index 000000000..c45049e1a --- /dev/null +++ b/tests/test-music-config--faces.el @@ -0,0 +1,25 @@ +;;; test-music-config--faces.el --- music playlist face definitions -*- lexical-binding: t; -*- + +;;; Commentary: +;; The playlist header propertizes text with cj/music-* faces. Each must be a +;; defined face (defface) or the reference is invalid -- an undefined face spams +;; "Invalid face reference" on every header render. The faces inherit from +;; themed base faces so the theme still owns their colors. + +;;; Code: + +(require 'ert) +(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory)) +(require 'music-config) + +(ert-deftest test-music-config-header-faces-are-defined () + "Normal: every cj/music face the playlist header uses is a defined face." + (dolist (f '(cj/music-header-face + cj/music-header-value-face + cj/music-mode-on-face + cj/music-mode-off-face + cj/music-keyhint-face)) + (should (facep f)))) + +(provide 'test-music-config--faces) +;;; test-music-config--faces.el ends here -- cgit v1.2.3