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

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

[elpa] master eba74ae 192/271: Improve assertion functions.


From: Jackson Ray Hamilton
Subject: [elpa] master eba74ae 192/271: Improve assertion functions.
Date: Thu, 05 Feb 2015 18:31:07 +0000

branch: master
commit eba74ae574d36d490e47b33101836c34759f52dc
Author: Jackson Ray Hamilton <address@hidden>
Commit: Jackson Ray Hamilton <address@hidden>

    Improve assertion functions.
---
 test/context-coloring-test.el |   83 +++++++++++++++++++++++------------------
 1 files changed, 47 insertions(+), 36 deletions(-)

diff --git a/test/context-coloring-test.el b/test/context-coloring-test.el
index 06fb6fc..88b556e 100644
--- a/test/context-coloring-test.el
+++ b/test/context-coloring-test.el
@@ -76,18 +76,29 @@ invoke when it is done."
     (context-coloring-mode)
     ,@body))
 
-(defun context-coloring-test-region-level-p (start end level)
+(defconst context-coloring-test-level-regexp
+  "context-coloring-level-\\([[:digit:]]+\\)-face")
+
+(defun context-coloring-test-assert-region-level (start end level)
   (let ((i 0)
         (length (- end start)))
     (while (< i length)
-      (let ((point (+ i start)))
-        (should (equal (get-text-property point 'face)
-                       (intern-soft (concat "context-coloring-level-"
-                                            (number-to-string level)
-                                            "-face")))))
+      (let* ((point (+ i start))
+             (face (get-text-property point 'face))
+             actual-level)
+        (when (not (when face
+                     (let* ((face-string (symbol-name face))
+                            (matches (string-match 
context-coloring-test-level-regexp face-string)))
+                       (when matches
+                         (setq actual-level (string-to-number (substring 
face-string
+                                                                         
(match-beginning 1)
+                                                                         
(match-end 1))))
+                         (= level actual-level)))))
+          (ert-fail (format "Expected level at point %s to be %s; was %s"
+                            point level actual-level))))
       (setq i (+ i 1)))))
 
-(defun context-coloring-test-message-should-be (expected)
+(defun context-coloring-test-assert-message (expected)
   (with-current-buffer "*Messages*"
     (let ((messages (split-string (buffer-substring-no-properties (point-min) 
(point-max)) "\n")))
       (let ((message (car (nthcdr (- (length messages) 2) messages))))
@@ -97,22 +108,22 @@ invoke when it is done."
   (context-coloring-test-with-fixture
    "./fixtures/function-scopes.js"
    (context-coloring-mode)
-   (context-coloring-test-message-should-be
+   (context-coloring-test-assert-message
     "Context coloring is not available for this major mode")))
 
 (defun context-coloring-test-js-function-scopes ()
-  (context-coloring-test-region-level-p 1 9 0)
-  (context-coloring-test-region-level-p 9 23 1)
-  (context-coloring-test-region-level-p 23 25 0)
-  (context-coloring-test-region-level-p 25 34 1)
-  (context-coloring-test-region-level-p 34 35 0)
-  (context-coloring-test-region-level-p 35 52 1)
-  (context-coloring-test-region-level-p 52 66 2)
-  (context-coloring-test-region-level-p 66 72 1)
-  (context-coloring-test-region-level-p 72 81 2)
-  (context-coloring-test-region-level-p 81 82 1)
-  (context-coloring-test-region-level-p 82 87 2)
-  (context-coloring-test-region-level-p 87 89 1))
+  (context-coloring-test-assert-region-level 1 9 0)
+  (context-coloring-test-assert-region-level 9 23 1)
+  (context-coloring-test-assert-region-level 23 25 0)
+  (context-coloring-test-assert-region-level 25 34 1)
+  (context-coloring-test-assert-region-level 34 35 0)
+  (context-coloring-test-assert-region-level 35 52 1)
+  (context-coloring-test-assert-region-level 52 66 2)
+  (context-coloring-test-assert-region-level 66 72 1)
+  (context-coloring-test-assert-region-level 72 81 2)
+  (context-coloring-test-assert-region-level 81 82 1)
+  (context-coloring-test-assert-region-level 82 87 2)
+  (context-coloring-test-assert-region-level 87 89 1))
 
 (ert-deftest-async context-coloring-test-js-mode-function-scopes (done)
   (context-coloring-test-js-mode
@@ -129,9 +140,9 @@ invoke when it is done."
    (context-coloring-test-js-function-scopes)))
 
 (defun context-coloring-test-js-global ()
-  (context-coloring-test-region-level-p 20 28 1)
-  (context-coloring-test-region-level-p 28 35 0)
-  (context-coloring-test-region-level-p 35 41 1))
+  (context-coloring-test-assert-region-level 20 28 1)
+  (context-coloring-test-assert-region-level 28 35 0)
+  (context-coloring-test-assert-region-level 35 41 1))
 
 (ert-deftest-async context-coloring-test-js-mode-global (done)
   (context-coloring-test-js-mode
@@ -148,13 +159,13 @@ invoke when it is done."
    (context-coloring-test-js-global)))
 
 (defun context-coloring-test-js-block-scopes ()
-  (context-coloring-test-region-level-p 20 64 1)
+  (context-coloring-test-assert-region-level 20 64 1)
    (setq context-coloring-js-block-scopes t)
    (context-coloring-colorize)
-   (context-coloring-test-region-level-p 20 27 1)
-   (context-coloring-test-region-level-p 27 41 2)
-   (context-coloring-test-region-level-p 41 42 1)
-   (context-coloring-test-region-level-p 42 64 2))
+   (context-coloring-test-assert-region-level 20 27 1)
+   (context-coloring-test-assert-region-level 27 41 2)
+   (context-coloring-test-assert-region-level 41 42 1)
+   (context-coloring-test-assert-region-level 42 64 2))
 
 (ert-deftest context-coloring-test-js2-mode-block-scopes ()
   (context-coloring-test-js2-mode
@@ -162,14 +173,14 @@ invoke when it is done."
    (context-coloring-test-js-block-scopes)))
 
 (defun context-coloring-test-js-catch ()
-  (context-coloring-test-region-level-p 20 27 1)
-  (context-coloring-test-region-level-p 27 51 2)
-  (context-coloring-test-region-level-p 51 52 1)
-  (context-coloring-test-region-level-p 52 73 2)
-  (context-coloring-test-region-level-p 73 101 3)
-  (context-coloring-test-region-level-p 101 102 1)
-  (context-coloring-test-region-level-p 102 117 3)
-  (context-coloring-test-region-level-p 117 123 2))
+  (context-coloring-test-assert-region-level 20 27 1)
+  (context-coloring-test-assert-region-level 27 51 2)
+  (context-coloring-test-assert-region-level 51 52 1)
+  (context-coloring-test-assert-region-level 52 73 2)
+  (context-coloring-test-assert-region-level 73 101 3)
+  (context-coloring-test-assert-region-level 101 102 1)
+  (context-coloring-test-assert-region-level 102 117 3)
+  (context-coloring-test-assert-region-level 117 123 2))
 
 (ert-deftest-async context-coloring-test-js-mode-catch (done)
   (context-coloring-test-js-mode



reply via email to

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