From 6d747e9d7b4c84ab0dc759f144be3f149ac5f29c Mon Sep 17 00:00:00 2001 From: Giampaolo Rodola Date: Sun, 23 Jun 2024 17:38:11 +0200 Subject: [PATCH] skip multiprocess tests on osx --- pyftpdlib/ioloop.py | 10 +++++----- pyftpdlib/test/__init__.py | 3 ++- pyftpdlib/test/test_servers.py | 4 ++++ 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/pyftpdlib/ioloop.py b/pyftpdlib/ioloop.py index e6757cbb..0d4f72ce 100644 --- a/pyftpdlib/ioloop.py +++ b/pyftpdlib/ioloop.py @@ -671,11 +671,11 @@ def close(self): # =================================================================== # --- kqueue() - BSD / OSX -# XXX: disabled as it got broke at some point # =================================================================== -# if hasattr(select, 'kqueue'): # pragma: no cover -if False: # noqa +# XXX: disabled as it got broken at some point +''' +if hasattr(select, 'kqueue'): # pragma: no cover class Kqueue(_IOLoop): """kqueue() based poller.""" @@ -788,6 +788,7 @@ def poll( _write(inst) if kevent.flags & _ERROR: inst.handle_close() +''' # =================================================================== @@ -797,8 +798,7 @@ def poll( if hasattr(select, 'epoll'): # epoll() - Linux IOLoop = Epoll # elif hasattr(select, 'kqueue'): # kqueue() - BSD / OSX -if False: # XXX: disabled as it got broken - IOLoop = Kqueue +# IOLoop = Kqueue elif hasattr(select, 'devpoll'): # /dev/poll - Solaris IOLoop = DevPoll elif hasattr(select, 'poll'): # poll() - POSIX diff --git a/pyftpdlib/test/__init__.py b/pyftpdlib/test/__init__.py index 4010000f..d6052157 100644 --- a/pyftpdlib/test/__init__.py +++ b/pyftpdlib/test/__init__.py @@ -484,7 +484,8 @@ def stop(self): assert_free_resources(self.parent_pid) -if POSIX: +# XXX: multiprocessing does not work on OSX on GHA +if POSIX and not (OSX and GITHUB_ACTIONS): class MProcessTestFTPd(multiprocessing.Process): """Same as above but using a sub process instead.""" diff --git a/pyftpdlib/test/test_servers.py b/pyftpdlib/test/test_servers.py index a3e66546..90aa72c2 100644 --- a/pyftpdlib/test/test_servers.py +++ b/pyftpdlib/test/test_servers.py @@ -11,8 +11,10 @@ from pyftpdlib import handlers from pyftpdlib import servers from pyftpdlib._compat import super +from pyftpdlib.test import GITHUB_ACTIONS from pyftpdlib.test import GLOBAL_TIMEOUT from pyftpdlib.test import HOST +from pyftpdlib.test import OSX from pyftpdlib.test import PASSWD from pyftpdlib.test import USER from pyftpdlib.test import WINDOWS @@ -33,6 +35,8 @@ MPROCESS_SUPPORT = hasattr(servers, 'MultiprocessFTPServer') +if OSX and GITHUB_ACTIONS: + MPROCESS_SUPPORT = False # it's just broken class TestFTPServer(PyftpdlibTestCase):