mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Avoid excessively large backtraces in ert-tests (bug#71988)
* test/lisp/emacs-lisp/ert-tests.el (ert-test-run-tests-batch-expensive): Temporarily make `cl-print-object' not print out vectors while running the test.
This commit is contained in:
parent
60a567af86
commit
0264ab1118
1 changed files with 9 additions and 2 deletions
|
|
@ -595,9 +595,14 @@ This macro is used to test if macroexpansion in `should' works."
|
|||
:body (lambda () (should (equal complex-list 1))))))
|
||||
(let ((ert-debug-on-error nil)
|
||||
messages)
|
||||
(cl-letf* (((symbol-function 'message)
|
||||
(cl-letf* (((symbol-function 'cl-print-object)
|
||||
(symbol-function 'cl-print-object))
|
||||
((symbol-function 'message)
|
||||
(lambda (format-string &rest args)
|
||||
(push (apply #'format format-string args) messages))))
|
||||
;; don't print the ert--stats-tests vector, which would run out of
|
||||
;; memory if previous tests have failed.
|
||||
(cl-defmethod cl-print-object ((_object vector) _stream))
|
||||
(save-window-excursion
|
||||
(let ((case-fold-search nil)
|
||||
(ert-batch-backtrace-right-margin nil)
|
||||
|
|
@ -612,7 +617,9 @@ This macro is used to test if macroexpansion in `should' works."
|
|||
do
|
||||
(unless found-frame
|
||||
(setq found-frame (cl-search frame msg :test 'equal))))
|
||||
(should found-frame)))))
|
||||
(should found-frame))))
|
||||
;; ensure our temporary binding was undone.
|
||||
(should (equal (cl-prin1-to-string [a]) "[a]")))
|
||||
|
||||
(ert-deftest ert-test-special-operator-p ()
|
||||
(should (ert--special-operator-p 'if))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue