Subject: bug#24921: 25.1; ERT fails to finish test run if test exceeeds max-lisp-eval-depth

From: Lars Ingebrigtsen <[email-masked]>
Date: Sat, 27 Jul 2019 14:26:08 +0200

Gemini Lasswell <[email-masked]> writes:

> If some code under test by ERT fails by recursing beyond
> max-lisp-eval-depth, the resulting error stops the ERT test run without
> marking the test as finished or failed.
>
> To reproduce, using emacs -Q or not, enter this code into *scratch*:
>
> (defun go-boom ()
>   (go-boom))
>
> (ert-deftest test-go-boom ()
>   (should (go-boom)))
>
> And then:
>   M-x eval-buffer RET
>   M-x ert RET RET
>
> Result: The ERT window appears and shows that it is running the test.
> But it never shows that it finishes. Any tests that you have defined
> that follow test-go-boom in alphabetical order will not run. The echo
> area will show the message "Lisp nesting exceeds ‘max-lisp-eval-depth’"

This seems to have been fixed in the years since this bug was reported;
I get the result below, so I'm closing this bug report.  If you're still
seeing this, please reopen.

-------

Selector: t
Passed:  0
Failed:  1 (1 unexpected)
Skipped: 0
Total:   1/1

Started at:   2019-07-27 14:24:49+0200
Finished.
Finished at:  2019-07-27 14:24:49+0200

F

F test-go-boom
    (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no