Subject: Re: bug#59317: 29.0.50; Feature idea: suppress `message' output in ert batch test output

From: Eli Zaretskii <[email-masked]>
Date: Thu, 17 Nov 2022 09:13:12 +0200

> From: Matt Armstrong <[email-masked]>
> Cc: [email-masked]
> Date: Wed, 16 Nov 2022 21:51:46 -0800
> 
> It looks like the set-message-function(s) hooks are bypassed in
> non-interactive mode.  In that case message3_nolog in xdisp.c calls
> message_to_stderr, instead of calling set_message.  It is set_message
> that ultimately uses the set-message-function machinery.
> 
> After looking at this more I agree with your suspicions.  It looks like
> good amount of C level code calls various message functions without
> going through Fmessage.  Also, I spot no easy way to modify ert.el to
> temporarily redirect stderr elsewhere.  In noninteractive mode Emacs
> seems hard coded to print to stderr.
> 
> I proposed this thinking it would be an easy and simple change.  At this
> point I'm thinking the effort and complexity here isn't worth it.  If
> nobody else wants to champion this idea I'll go ahead and close it.

The only idea I have is to mock-out the relevant functions in the
test.