Ar an ceathrú lá is fiche de mí na Nollaig, scríobh Stephen J. Turnbull:
I got tired of having "make check" stall on mule-tests.
Something I
don't understand is going on, because Skip-Test-Unless is failing the
char-code-limit condition, but doing the test anyway. The only thing
I can think of is that Skip-Test-Unless is a macro but for some reason
evaluates its condition anyway, which is a bug, but I'm not sure
whether it's in XEmacs or in Skip-Test-Unless.
It’s an error in my syntax calling Skip-Test-Unless. I’ve fixed this and
incorporated a change in test-harness.el so other people aren’t caught by
the same issue. Thanks for the bug report!
# HG changeset patch
# User Aidan Kehoe <kehoea(a)parhasard.net>
# Date 1514124997 0
# Sun Dec 24 14:16:37 2017 +0000
# Node ID 75597c755b6716ef4ffa782f37650dd48792d6ea
# Parent b5c15ce519c23670ffba7da0c365f5044e137d90
Call `Skip-Test-Unless' correctly, mule-test.el.
lisp/ChangeLog addition:
2017-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
* test-harness.el (test-harness-from-buffer):
Error in `Skip-Test-Unless' if BODY is not specified.
tests/ChangeLog addition:
2017-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/mule-tests.el:
Call Skip-Test-Unless correctly for #'test-chars, thank you
Stephen Turnbull.
diff -r b5c15ce519c2 -r 75597c755b67 lisp/ChangeLog
--- a/lisp/ChangeLog Fri Dec 22 21:39:11 2017 +0000
+++ b/lisp/ChangeLog Sun Dec 24 14:16:37 2017 +0000
@@ -1,3 +1,8 @@
+2017-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * test-harness.el (test-harness-from-buffer):
+ Error in `Skip-Test-Unless' if BODY is not specified.
+
2017-12-22 Aidan Kehoe <kehoea(a)parhasard.net>
* descr-text.el (describe-char-unicodedata-file):
diff -r b5c15ce519c2 -r 75597c755b67 lisp/test-harness.el
--- a/lisp/test-harness.el Fri Dec 22 21:39:11 2017 +0000
+++ b/lisp/test-harness.el Sun Dec 24 14:16:37 2017 +0000
@@ -379,6 +379,7 @@
REASON is a description of the condition failure, and must be unique (it
is used as a hash key). DESCRIPTION describes the tests that were skipped.
BODY is a sequence of expressions and may contain several tests."
+ (or body (error 'syntax-error "BODY omitted in `skip-test-unless'"))
`(if (not ,condition)
(let ((count (gethash ,reason skipped-test-reasons)))
(puthash ,reason (if (null count) 1 (1+ count))
diff -r b5c15ce519c2 -r 75597c755b67 tests/ChangeLog
--- a/tests/ChangeLog Fri Dec 22 21:39:11 2017 +0000
+++ b/tests/ChangeLog Sun Dec 24 14:16:37 2017 +0000
@@ -1,3 +1,9 @@
+2017-12-24 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * automated/mule-tests.el:
+ Call Skip-Test-Unless correctly for #'test-chars, thank you
+ Stephen Turnbull.
+
2017-12-02 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/keymap-tests.el:
diff -r b5c15ce519c2 -r 75597c755b67 tests/automated/mule-tests.el
--- a/tests/automated/mule-tests.el Fri Dec 22 21:39:11 2017 +0000
+++ b/tests/automated/mule-tests.el Sun Dec 24 14:16:37 2017 +0000
@@ -85,6 +85,7 @@
;; and the string means I run out of memory when I attempt to run this.
(<= char-code-limit #x200000)
"CHAR-CODE-LIMIT is impractically large"
+ "check that all existing characters can be inserted into a buffer"
;; Run #'test-chars in byte-compiled mode only.
(and (compiled-function-p (symbol-function 'test-chars)) (test-chars t)))
--
‘As I sat looking up at the Guinness ad, I could never figure out /
How your man stayed up on the surfboard after forty pints of stout’
(C. Moore)