File support-pyftpdlib-2.0.patch of Package python-fs

From a3a1005715adebcaabafc93d36369783d7fc5f9f Mon Sep 17 00:00:00 2001
From: "Benjamin A. Beasley" <code@musicinmybrain.net>
Date: Sat, 14 Jun 2025 07:47:07 -0400
Subject: [PATCH] Make tests compatible with pyftpdlib 2.0

Inspired by @mweinelt via
https://github.com/PyFilesystem/pyfilesystem2/pull/591.
---
 tests/requirements.txt | 12 ++++--------
 tests/test_ftpfs.py    |  8 ++++----
 2 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/tests/requirements.txt b/tests/requirements.txt
index b7ff3ce4..0db1f97b 100644
--- a/tests/requirements.txt
+++ b/tests/requirements.txt
@@ -1,14 +1,10 @@
 # the bare requirements for running tests
 
 # pyftpdlib is needed to spawn a FTP server for the
-# FTPFS test suite
-pyftpdlib ~=1.5
-
-# these are optional dependencies for pyftpdlib that
-# are not explicitly listed, we need to install these
-# ourselves
-psutil ~=5.0
-pysendfile ~=2.0 ; python_version <= "3.3"
+# FTPFS test suite; we import from pyftpdlib.test, so
+# we need (at least some of) pyftpdlib's test
+# dependencies
+pyftpdlib[test] ~=2.0
 
 # mock is only available from Python 3.3 onward, and 
 # mock v4+ doesn't support Python 2.7 anymore
diff --git a/tests/test_ftpfs.py b/tests/test_ftpfs.py
index 2bb2c73c..a3cfb04a 100644
--- a/tests/test_ftpfs.py
+++ b/tests/test_ftpfs.py
@@ -146,7 +146,7 @@ class TestFTPFS(FSTestCases, unittest.TestCase):
 
     @classmethod
     def setUpClass(cls):
-        from pyftpdlib.test import ThreadedTestFTPd
+        from pyftpdlib.test import FtpdThreadWrapper
 
         super(TestFTPFS, cls).setUpClass()
 
@@ -154,7 +154,7 @@ def setUpClass(cls):
         cls._temp_path = os.path.join(cls._temp_dir, text_type(uuid.uuid4()))
         os.mkdir(cls._temp_path)
 
-        cls.server = ThreadedTestFTPd()
+        cls.server = FtpdThreadWrapper()
         cls.server.shutdown_after = -1
         cls.server.handler.authorizer = DummyAuthorizer()
         cls.server.handler.authorizer.add_user(
@@ -336,7 +336,7 @@ class TestAnonFTPFS(FSTestCases, unittest.TestCase):
 
     @classmethod
     def setUpClass(cls):
-        from pyftpdlib.test import ThreadedTestFTPd
+        from pyftpdlib.test import FtpdThreadWrapper
 
         super(TestAnonFTPFS, cls).setUpClass()
 
@@ -344,7 +344,7 @@ def setUpClass(cls):
         cls._temp_path = os.path.join(cls._temp_dir, text_type(uuid.uuid4()))
         os.mkdir(cls._temp_path)
 
-        cls.server = ThreadedTestFTPd()
+        cls.server = FtpdThreadWrapper()
         cls.server.shutdown_after = -1
         cls.server.handler.authorizer = DummyAuthorizer()
         cls.server.handler.authorizer.add_anonymous(cls._temp_path, perm="elradfmw")
openSUSE Build Service is sponsored by