emacs-module-tests.el (mod-test-non-local-exit-signal-test): Repair test

That test relied on `debugger` and `debug-on-signal` in a way that
doesn't work with the new ERT code.

* test/src/emacs-module-tests.el (mod-test-non-local-exit-signal-test):
Use `handler-bind` rather than the debugger.
This commit is contained in:
Stefan Monnier 2023-12-28 00:49:39 -05:00
parent fa1063774c
commit 142c90a6f0

View file

@ -114,15 +114,14 @@ changes."
(ert-deftest mod-test-non-local-exit-signal-test ()
(should-error (mod-test-signal))
(let (debugger-args backtrace)
(let (handler-err backtrace)
(should-error
(let ((debugger (lambda (&rest args)
(setq debugger-args args
backtrace (with-output-to-string (backtrace)))
(cl-incf num-nonmacro-input-events)))
(debug-on-signal t))
(handler-bind
((error (lambda (err)
(setq handler-err err
backtrace (with-output-to-string (backtrace))))))
(mod-test-signal)))
(should (equal debugger-args '(error (error . 56))))
(should (equal handler-err '(error . 56)))
(should (string-match-p
(rx bol " mod-test-signal()" eol)
backtrace))))