summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_importlib/test_metadata_api.py
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2021-08-01 03:01:38 (GMT)
committerGitHub <noreply@github.com>2021-08-01 03:01:38 (GMT)
commit21d5897982698a461215203ab51f56ad05648001 (patch)
tree3ecf665598de82467d972f5493d94a70eac7584b /Lib/test/test_importlib/test_metadata_api.py
parent35035bc35a9cb8617ab9fe9aac38aaf67c926aef (diff)
downloadcpython-21d5897982698a461215203ab51f56ad05648001.zip
cpython-21d5897982698a461215203ab51f56ad05648001.tar.gz
cpython-21d5897982698a461215203ab51f56ad05648001.tar.bz2
bpo-44784: Apply changes from importlib_metadata 4.6.3 (GH-27508) (#27510)
Addressing issues with tests under error on warnings. Automerge-Triggered-By: GH:jaraco (cherry picked from commit 1cf8424a62db38a041d421a46618e025bbb87f89) Co-authored-by: Jason R. Coombs <jaraco@jaraco.com> Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
Diffstat (limited to 'Lib/test/test_importlib/test_metadata_api.py')
-rw-r--r--Lib/test/test_importlib/test_metadata_api.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/Lib/test/test_importlib/test_metadata_api.py b/Lib/test/test_importlib/test_metadata_api.py
index 2bfc44b..dc9c234 100644
--- a/Lib/test/test_importlib/test_metadata_api.py
+++ b/Lib/test/test_importlib/test_metadata_api.py
@@ -3,6 +3,7 @@ import textwrap
import unittest
import warnings
import importlib
+import contextlib
from . import fixtures
from importlib.metadata import (
@@ -17,6 +18,13 @@ from importlib.metadata import (
)
+@contextlib.contextmanager
+def suppress_known_deprecation():
+ with warnings.catch_warnings(record=True) as ctx:
+ warnings.simplefilter('default')
+ yield ctx
+
+
class APITests(
fixtures.EggInfoPkg,
fixtures.DistInfoPkg,
@@ -118,8 +126,7 @@ class APITests(
# Prior versions of entry_points() returned simple lists and
# allowed casting those lists into maps by name using ``dict()``.
# Capture this now deprecated use-case.
- with warnings.catch_warnings(record=True) as caught:
- warnings.filterwarnings("default", category=DeprecationWarning)
+ with suppress_known_deprecation() as caught:
eps = dict(entry_points(group='entries'))
assert 'main' in eps
@@ -138,8 +145,7 @@ class APITests(
See python/importlib_metadata#300 and bpo-44246.
"""
eps = distribution('distinfo-pkg').entry_points
- with warnings.catch_warnings(record=True) as caught:
- warnings.filterwarnings("default", category=DeprecationWarning)
+ with suppress_known_deprecation() as caught:
eps[0]
# check warning
@@ -151,7 +157,7 @@ class APITests(
# Prior versions of entry_points() returned a dict. Ensure
# that callers using '.__getitem__()' are supported but warned to
# migrate.
- with warnings.catch_warnings(record=True):
+ with suppress_known_deprecation():
entry_points()['entries'] == entry_points(group='entries')
with self.assertRaises(KeyError):
@@ -161,7 +167,7 @@ class APITests(
# Prior versions of entry_points() returned a dict. Ensure
# that callers using '.get()' are supported but warned to
# migrate.
- with warnings.catch_warnings(record=True):
+ with suppress_known_deprecation():
entry_points().get('missing', 'default') == 'default'
entry_points().get('entries', 'default') == entry_points()['entries']
entry_points().get('missing', ()) == ()