Skip hanging tests on Cygwin (bug#65325)

* test/lisp/server-tests.el (server-tests/can-create-frames-p):
Define to be nil on Cygwin unless Emacs has at least one of the
features gfilenotify, dbus, or threads.  This causes three tests
to be skipped.

* test/src/keyboard-tests.el (keyboard-unread-command-events):
Skip on Cygwin unless Emacs has at least one of the features
gfilenotify, dbus, or threads.
This commit is contained in:
Ken Brown 2023-08-19 14:18:57 -04:00
parent 44697457c6
commit f58d01e01e
2 changed files with 14 additions and 3 deletions

View file

@ -25,12 +25,18 @@
(defconst server-tests/can-create-frames-p
(and (not (memq system-type '(windows-nt ms-dos)))
(not (member (getenv "TERM") '("dumb" "" nil))))
(not (member (getenv "TERM") '("dumb" "" nil)))
(or (not (eq system-type 'cygwin))
(featurep 'gfilenotify)
(featurep 'dbus)
(featurep 'threads)))
"Non-nil if we can create a new frame in the tests.
Some tests below need to create new frames for the emacsclient.
However, this doesn't work on all platforms. In particular,
MS-Windows fails to create frames from a batch Emacs session. In
cases like that, we just skip the test.")
MS-Windows fails to create frames from a batch Emacs session.
The same is true on Cygwin unless Emacs has at least one of the
features gfilenotify, dbus, or threads (bug#65325). In cases
like that, we just skip the test.")
(defconst server-tests/max-wait-time 5
"The maximum time to wait in `server-tests/wait-until', in seconds.")

View file

@ -23,6 +23,11 @@
(ert-deftest keyboard-unread-command-events ()
"Test `unread-command-events'."
;; Avoid hang on Cygwin; see bug#65325.
(skip-unless (or (not (eq system-type 'cygwin))
(featurep 'gfilenotify)
(featurep 'dbus)
(featurep 'threads)))
(let ((unread-command-events nil))
(should (equal (progn (push ?\C-a unread-command-events)
(read-event nil nil 1))