GNU bug report logs - #55849
29.0.50; process-async-https-with-delay error detection is wrong

Previous Next

Package: emacs;

Reported by: Ken Brown <kbrown <at> cornell.edu>

Date: Wed, 8 Jun 2022 16:36:01 UTC

Severity: normal

Found in version 29.0.50

Done: Ken Brown <kbrown <at> cornell.edu>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Ken Brown <kbrown <at> cornell.edu>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#55849: closed (29.0.50; process-async-https-with-delay error
 detection is wrong)
Date: Wed, 08 Jun 2022 17:13:01 +0000
[Message part 1 (text/plain, inline)]
Your message dated Wed, 8 Jun 2022 13:12:32 -0400
with message-id <3cb16919-43fc-de47-2f41-e86acbacd123 <at> cornell.edu>
and subject line Re: bug#55849: 29.0.50; process-async-https-with-delay error detection is wrong
has caused the debbugs.gnu.org bug report #55849,
regarding 29.0.50; process-async-https-with-delay error detection is wrong
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
55849: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55849
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Ken Brown <kbrown <at> cornell.edu>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.50; process-async-https-with-delay error detection is wrong
Date: Wed, 8 Jun 2022 12:30:31 -0400
process-async-https-with-delay in test/src/process-tests.el fails on
Cygwin as follows:

Test process-async-https-with-delay condition:
    (ert-test-failed
     ((should
       (>
        (buffer-size buf)
        0))
      :form
      (> 0 0)
      :value nil))

I haven't yet figured out why, but in attempting to debug this I
discovered that the error reporting in the test is faulty.  What
actually happens is that the connection fails, and this failure is
indicated by the 'status' variable.  The latter is a plist, but the test
uses '(should-not (assq :error status))' as though it were an alist.

The following patch fixes the problem:

diff --git a/test/src/process-tests.el b/test/src/process-tests.el
index f5908d3cda..824c6da119 100644
--- a/test/src/process-tests.el
+++ b/test/src/process-tests.el
@@ -931,7 +931,7 @@ process-async-https-with-delay
                         (< (float-time) (+ t0 limit)))
               (sit-for 0.1)))
           (should status)
-          (should-not (assq :error status))
+          (should-not (plist-get status ':error))
           (should buf)
           (should (> (buffer-size buf) 0))
           )

With this patch the correct reason for the failure is shown:

Test process-async-https-with-delay condition:
    (ert-test-failed
     ((should-not
       (plist-get status ':error))
      :form
      (plist-get
       (:error
         (error connection-failed "deleted\n" :host "elpa.gnu.org" :service 443))
       :error)
      :value
      (error connection-failed "deleted\n" :host "elpa.gnu.org" :service 443)))

OK to apply?  If so, to which branch?  The problem exists on both master
and the release branch.

Ken


[Message part 3 (message/rfc822, inline)]
From: Ken Brown <kbrown <at> cornell.edu>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 55849-done <at> debbugs.gnu.org
Subject: Re: bug#55849: 29.0.50; process-async-https-with-delay error
 detection is wrong
Date: Wed, 8 Jun 2022 13:12:32 -0400
On 6/8/2022 12:52 PM, Eli Zaretskii wrote:
> Please install on the release branch, and thanks.

Done.  Closing.


This bug report was last modified 2 years and 350 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.