emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/lua-mode cadc1ea 312/468: to-be-fontified-as: improve erro


From: Philip Kaludercic
Subject: [nongnu] elpa/lua-mode cadc1ea 312/468: to-be-fontified-as: improve error messages
Date: Thu, 5 Aug 2021 04:58:59 -0400 (EDT)

branch: elpa/lua-mode
commit cadc1ea8594c1367b910e46aec597cb6d065d74f
Author: immerrr <immerrr+lua@gmail.com>
Commit: immerrr <immerrr+lua@gmail.com>

    to-be-fontified-as: improve error messages
---
 test/utils.el | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

diff --git a/test/utils.el b/test/utils.el
index bf16a75..65256f2 100644
--- a/test/utils.el
+++ b/test/utils.el
@@ -1,12 +1,31 @@
+;; -*- flycheck-disabled-checkers: (emacs-lisp-checkdoc) -*-
+
 (require 'lua-mode)
 (require 'buttercup)
 
 
 (defun to-be-fontified-as (text faces)
   (let ((expected-faces (lua-mk-font-lock-faces faces))
-        (result-faces (lua-get-line-faces text)))
-    (cons (equal expected-faces result-faces)
-          (format "Expected %S to be fontified as %s" text faces))))
+        (result-faces (lua-get-line-faces text))
+        (lineno 1))
+    (when (/= (length expected-faces) (length result-faces))
+        (buttercup-fail "\
+Fontification check failed for:
+%S
+  Text contains %d lines, face list contains %d lines"
+                        text (length result-faces) (length expected-faces)))
+    (while expected-faces
+      (unless (equal (car expected-faces) (car result-faces))
+        (buttercup-fail "\
+Fontification check failed on line %d for:
+%S
+  Result faces:   %S
+  Expected faces: %S"
+                        lineno text (car expected-faces) (car result-faces)))
+      (setq expected-faces (cdr expected-faces)
+            result-faces (cdr result-faces)
+            lineno (1+ lineno)))
+    (cons t "Fontification check passed")))
 
 
 (buttercup-define-matcher :to-be-fontified-as (text faces)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]