diff options
Diffstat (limited to 'test/lisp')
-rw-r--r-- | test/lisp/electric-tests.el | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/test/lisp/electric-tests.el b/test/lisp/electric-tests.el index 05a6989664d..62a42b7fe44 100644 --- a/test/lisp/electric-tests.el +++ b/test/lisp/electric-tests.el @@ -135,9 +135,11 @@ The buffer's contents should %s: (length fixture) fixture (if fixture-fn (format "\nNow call this:\n\n%s" - (pp-to-string fixture-fn)) "") + (pp-to-string fixture-fn)) + "") (if bindings (format "\nEnsure the following bindings:\n\n%s" - (pp-to-string bindings)) "") + (pp-to-string bindings)) + "") char (if (string= fixture expected-string) "stay" "become") (replace-regexp-in-string "\n" "\\\\n" expected-string) @@ -163,8 +165,11 @@ The buffer's contents should %s: (test-in-comments t) (test-in-strings t) (test-in-code t) - (fixture-fn #'(lambda () - (electric-pair-mode 1)))) + ;; The semantics of CL's defmacro "default values" is subtle: + ;; contrary to the actual arguments, these are evaluated (and + ;; are expected to return the "default form"). + ;; `fixture-fn' contains a form whose evaluation returns a function. + (fixture-fn '#'electric-pair-mode)) `(progn ,@(cl-loop for mode in (eval modes) ;FIXME: avoid `eval' |