Subject: Batch ert wrongly aborts a test run, and wrongly fails to say why.

From: Alan Mackenzie <[email-masked]>
Date: Fri, 24 May 2024 19:23:14 +0000

Hello, Stefan and Emacs.

In my development branch, based on master, last updated ~March 2024.

(i) Build emacs.
(ii) make -j17 check.

The ert session this starts goes well, apart from in
lisp/erc/erc-tests.el.  This gets aborted by ert after 62 from 92 tests
have passed.  Test 63 fails for known reasons, a mismatch of two strings
compared with `equal'.

The log file, erc-tests.log, looks like this around the output for test
63:

.........................................................
   passed  60/92  erc--update-user-modes (0.000093 sec)
   passed  61/92  erc--user-modes (0.000053 sec)
   passed  62/92  erc--valid-local-channel-p (0.000071 sec)
Test erc--with-dependent-type-match backtrace:

Aborted: Ran 92 tests, 62 results as expected, 1 unexpected (2024-05-24
15:26:55+0000, 2.791555 sec)

1 unexpected results:
   FAILED  erc--with-dependent-type-match
  UNKNOWN  erc--with-entrypoint-environment
  UNKNOWN  erc-channel-p
  UNKNOWN  erc-channel-user
........................................................

Note that
(i) No error message or backtrace gets printed for test 63.  This is a
  bug.
(ii) The test run gets aborted.  This shouldn't happen, and is a bug.

erc-tests.el runs satisfactorally in an Emacs session, started by M-x
ert, and accepting the default selection t.

-- 
Alan Mackenzie (Nuremberg, Germany).