]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-121604: fix warnings in test_importlib.test_abc and test_importlib.test_windows...
authorThomas Grainger <tagrain@gmail.com>
Thu, 16 Jan 2025 21:29:16 +0000 (21:29 +0000)
committerGitHub <noreply@github.com>
Thu, 16 Jan 2025 21:29:16 +0000 (13:29 -0800)
Lib/test/test_importlib/test_abc.py
Lib/test/test_importlib/test_windows.py

index 00af2dd712425a5b378662d22cdfa3687900ca6d..92a77e079e57e7aa66b572cbcb9dbac1065eb798 100644 (file)
@@ -226,7 +226,15 @@ class ResourceLoaderDefaultsTests(ABCTestHarness):
     SPLIT = make_abc_subclasses(ResourceLoader)
 
     def test_get_data(self):
-        with self.assertRaises(IOError):
+        with (
+            self.assertRaises(IOError),
+            self.assertWarnsRegex(
+                DeprecationWarning,
+                r"importlib\.abc\.ResourceLoader is deprecated in favour of "
+                r"supporting resource loading through importlib\.resources"
+                r"\.abc\.TraversableResources.",
+            ),
+        ):
             self.ins.get_data('/some/path')
 
 
@@ -927,9 +935,19 @@ class SourceLoaderDeprecationWarningsTests(unittest.TestCase):
 
             def path_stats(self, path):
                 return {'mtime': 1}
-
-        loader = DummySourceLoader()
-        with self.assertWarns(DeprecationWarning):
+        with self.assertWarnsRegex(
+            DeprecationWarning,
+            r"importlib\.abc\.ResourceLoader is deprecated in favour of "
+            r"supporting resource loading through importlib\.resources"
+            r"\.abc\.TraversableResources.",
+        ):
+            loader = DummySourceLoader()
+
+        with self.assertWarnsRegex(
+            DeprecationWarning,
+            r"SourceLoader\.path_mtime is deprecated in favour of "
+            r"SourceLoader\.path_stats\(\)\."
+        ):
             loader.path_mtime('foo.py')
 
 
index f32680bdbeb9e377cfdd1cc90d8b79d220e3c83b..bef4fb46f859a4e5a18f9b35ce2280481d898122 100644 (file)
@@ -91,23 +91,46 @@ class WindowsRegistryFinderTests:
     test_module = "spamham{}".format(os.getpid())
 
     def test_find_spec_missing(self):
-        spec = self.machinery.WindowsRegistryFinder.find_spec('spam')
+        with self.assertWarnsRegex(
+            DeprecationWarning,
+            r"importlib\.machinery\.WindowsRegistryFinder is deprecated; "
+            r"use site configuration instead\. Future versions of Python may "
+            r"not enable this finder by default\."
+        ):
+            spec = self.machinery.WindowsRegistryFinder.find_spec('spam')
         self.assertIsNone(spec)
 
     def test_module_found(self):
         with setup_module(self.machinery, self.test_module):
-            spec = self.machinery.WindowsRegistryFinder.find_spec(self.test_module)
+            with self.assertWarnsRegex(
+                DeprecationWarning,
+                r"importlib\.machinery\.WindowsRegistryFinder is deprecated; "
+                r"use site configuration instead\. Future versions of Python may "
+                r"not enable this finder by default\."
+            ):
+                spec = self.machinery.WindowsRegistryFinder.find_spec(self.test_module)
             self.assertIsNotNone(spec)
 
     def test_module_not_found(self):
         with setup_module(self.machinery, self.test_module, path="."):
-            spec = self.machinery.WindowsRegistryFinder.find_spec(self.test_module)
+            with self.assertWarnsRegex(
+                DeprecationWarning,
+                r"importlib\.machinery\.WindowsRegistryFinder is deprecated; "
+                r"use site configuration instead\. Future versions of Python may "
+                r"not enable this finder by default\."
+            ):
+                spec = self.machinery.WindowsRegistryFinder.find_spec(self.test_module)
             self.assertIsNone(spec)
 
     def test_raises_deprecation_warning(self):
         # WindowsRegistryFinder is not meant to be instantiated, so the
         # deprecation warning is raised in the 'find_spec' method instead.
-        with self.assertWarns(DeprecationWarning):
+        with self.assertWarnsRegex(
+            DeprecationWarning,
+            r"importlib\.machinery\.WindowsRegistryFinder is deprecated; "
+            r"use site configuration instead\. Future versions of Python may "
+            r"not enable this finder by default\."
+        ):
             self.machinery.WindowsRegistryFinder.find_spec('spam')
 
 (Frozen_WindowsRegistryFinderTests,