Subject: Re: bug#60936: 30.0.50; ERC >5.5: Add erc-fill style based on visual-line-mode

From: Stefan Kangas <[email-masked]>
Date: Wed, 13 Sep 2023 08:56:12 -0700

"J.P." <[email-masked]> writes:

> One of my patches for this feature introduced a corner-case regression
> involving the option `erc-echo-timestamps'. If `cursor-sensor-mode' is
> somehow enabled outside of this module, then timestamps will still be
> echoed even when `erc-echo-timestamps' is nil.
>
>   commit ad3dc74e074719a58226e23a45c4556cd54c0a48
>   Author: F. Jason Park <[email-masked]>
>   Date:   Wed Nov 24 03:10:20 2021 -0800
>
>       Expose insertion time as text prop in erc-stamp
>
>       * lisp/erc/erc-stamp.el (erc-add-timestamp): Add new text property
>       [...]
>       (erc-echo-timestamp): Make interactive and show timestamps even when
>       the variable `erc-echo-timestamps' is nil.
>       (erc--echo-ts-csf): Add new function to serve as value of
>       cursor-sensor function text properties.
>       * test/lisp/erc/erc-stamp-tests.el: New file.  (Bug#60936.)

I'm seeing new test failures with this file on master:

Running 6 tests (2023-09-13 16:45:56+0200, selector ‘(not (or (tag
:expensive-test) (tag :unstable) (tag :nativecomp)))’)
Test erc-echo-timestamp backtrace:
  signal(ert-test-failed (((should (equal (call-interactively #'erc-ec
  ert-fail(((should (equal (call-interactively #'erc-echo-timestamp) "
  #f(compiled-function () #<bytecode -0x766a19e4460e6be>)()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name erc-echo-timestamp :documentation nil
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or ... ... ...))
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/erc/erc-stamp-tests"
  command-line()
  normal-top-level()
Test erc-echo-timestamp condition:
    (ert-test-failed
     ((should (equal (call-interactively ...) "1983-09-27 04:00:00 GMT"))
      :form (equal "1983-09-27 04:00:00 UTC" "1983-09-27 04:00:00 GMT")
      :value nil :explanation
      (array-elt 20 (different-atoms (85 "#x55" "?U") (71 "#x47" "?G")))))
   FAILED  1/6  erc-echo-timestamp (0.002433 sec) at
lisp/erc/erc-stamp-tests.el:277
   passed  2/6  erc-stamp--display-margin-mode--right (0.009260 sec)
   passed  3/6  erc-timestamp-intangible--left (0.012494 sec)
   passed  4/6  erc-timestamp-use-align-to--integer (0.007917 sec)
   passed  5/6  erc-timestamp-use-align-to--nil (0.015289 sec)
   passed  6/6  erc-timestamp-use-align-to--t (0.024845 sec)

Ran 6 tests, 5 results as expected, 1 unexpected (2023-09-13
16:45:56+0200, 0.484120 sec)

1 unexpected results:
   FAILED  erc-echo-timestamp

  GEN      lisp/eshell/em-dirs-tests.log
make[3]: *** [lisp/erc/erc-stamp-tests.log] Error 1

In GNU Emacs 30.0.50 (build 3, x86_64-apple-darwin21.6.0, NS
 appkit-2113.60 Version 12.6.9 (Build 21G726)) of 2023-09-13 built on
 MY-MacBook-Pro
Repository revision: 1f7113e68988fa0bcbdeca5ae364cba8d6db3637
Repository branch: master
Windowing system distributor 'Apple', version 10.3.2113
System Description:  macOS 12.6.9

Configured features:
ACL GIF GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY KQUEUE NS
PDUMPER PNG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP
XIM ZLIB