gh-132947: Apply changes from importlib_metadata 8.7 (#137885)

* Copied files from python/importlib_metadata@b67ac80c49.
This commit is contained in:
Jason R. Coombs 2025-08-18 10:54:10 -07:00 committed by GitHub
parent 918e3ba6c0
commit 5292fc00f2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 294 additions and 122 deletions

View file

@ -1,8 +1,7 @@
import re
import pickle
import unittest
import importlib
import importlib.metadata
import pickle
import re
import unittest
from test.support import os_helper
try:
@ -10,8 +9,6 @@
except ImportError:
from .stubs import fake_filesystem_unittest as ffs
from . import fixtures
from ._path import Symlink
from importlib.metadata import (
Distribution,
EntryPoint,
@ -24,6 +21,9 @@
version,
)
from . import fixtures
from ._path import Symlink
class BasicTests(fixtures.DistInfoPkg, unittest.TestCase):
version_pattern = r'\d+\.\d+(\.\d)?'
@ -157,6 +157,16 @@ def test_valid_dists_preferred(self):
dist = Distribution.from_name('foo')
assert dist.version == "1.0"
def test_missing_metadata(self):
"""
Dists with a missing metadata file should return None.
Ref python/importlib_metadata#493.
"""
fixtures.build_files(self.make_pkg('foo-4.3', files={}), self.site_dir)
assert Distribution.from_name('foo').metadata is None
assert metadata('foo') is None
class NonASCIITests(fixtures.OnSysPath, fixtures.SiteDir, unittest.TestCase):
@staticmethod