all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: haj@posteo.de (Harald Jörg)
To: 44317@debbugs.gnu.org
Subject: bug#44317: [PATCH] cperl-mode: Make timeout tests more robust
Date: Thu, 29 Oct 2020 22:09:29 +0100	[thread overview]
Message-ID: <87lffo3fjq.fsf@hajtower> (raw)

[-- Attachment #1: Type: text/plain, Size: 484 bytes --]

One of the tests in cperl-mode-tests.el starts an external Emacs process
under timeout to check for an endless loop.  It turns out that the
timeout of 1 sec is rather short for slower machines.  Thanks to recent
ERT which now reports the run time in batch tests, I saw that it takes
about 0.7 seconds on my machine, so I increased the timeout to 2
seconds.

I also flagged the test as "expensive" and skip it under older Emacs
versions (I run tests for Emacs version 26.1 and above).

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: cperl-mode: Make timeout tests more robust --]
[-- Type: text/x-diff, Size: 1709 bytes --]

From b169038b5d619907f2513de944e4515bf7524d53 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Harald=20J=C3=B6rg?= <haj@posteo.de>
Date: Thu, 29 Oct 2020 22:06:56 +0100
Subject: [PATCH] cperl-mode: Make timeout test more robust

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-mode-test-bug-10483): Increase the timeout to 2 seconds
and mark the test as expensive.  Also, suppress it for Emacs
versions below 28, where the test times out though the function
works quite fine in manual tests.
---
 test/lisp/progmodes/cperl-mode-tests.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/test/lisp/progmodes/cperl-mode-tests.el b/test/lisp/progmodes/cperl-mode-tests.el
index e67678cf6b..9b486ae2e2 100644
--- a/test/lisp/progmodes/cperl-mode-tests.el
+++ b/test/lisp/progmodes/cperl-mode-tests.el
@@ -108,8 +108,10 @@ cperl-mode-test-bug-10483
 without a statement terminator on the same line does not loop
 forever.  The test starts an asynchronous Emacs batch process
 under timeout control."
+  :tags '(:expensive-test)
   (interactive)
   (skip-unless (not (getenv "EMACS_HYDRA_CI"))) ; FIXME times out
+  (skip-unless (not (< emacs-major-version 28))) ; times out in older Emacsen
   (let* ((emacs (concat invocation-directory invocation-name))
          (test-function 'cperl-mode-test--run-bug-10483)
          (test-function-name (symbol-name test-function))
@@ -118,7 +120,7 @@ cperl-mode-test-bug-10483
          (process-connection-type nil)
          runner)
     (with-temp-buffer
-      (with-timeout (1
+      (with-timeout (2
                      (delete-process runner)
                      (setq ran-out-of-time t))
         (setq runner (start-process "speedy"
-- 
2.20.1


             reply	other threads:[~2020-10-29 21:09 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-29 21:09 Harald Jörg [this message]
2020-10-29 21:49 ` bug#44317: [PATCH] cperl-mode: Make timeout tests more robust Stefan Kangas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lffo3fjq.fsf@hajtower \
    --to=haj@posteo.de \
    --cc=44317@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.