mirror of
https://github.com/python/cpython.git
synced 2025-08-04 17:08:35 +00:00
Issue #19927: Add __eq__ to path-based loaders in importlib.
This commit is contained in:
parent
78194cd4e9
commit
d749c7ae68
6 changed files with 698 additions and 621 deletions
|
@ -28,6 +28,15 @@ class LoaderTests(abc.LoaderTests):
|
|||
with self.assertRaises(ImportError):
|
||||
self.load_module('XXX')
|
||||
|
||||
def test_equality(self):
|
||||
other = self.machinery.ExtensionFileLoader(ext_util.NAME,
|
||||
ext_util.FILEPATH)
|
||||
self.assertEqual(self.loader, other)
|
||||
|
||||
def test_inequality(self):
|
||||
other = self.machinery.ExtensionFileLoader('_' + ext_util.NAME,
|
||||
ext_util.FILEPATH)
|
||||
self.assertNotEqual(self.loader, other)
|
||||
|
||||
def test_module(self):
|
||||
with util.uncache(ext_util.NAME):
|
||||
|
|
|
@ -27,6 +27,11 @@ class SimpleTest(abc.LoaderTests):
|
|||
|
||||
"""
|
||||
|
||||
def setUp(self):
|
||||
self.name = 'spam'
|
||||
self.filepath = os.path.join('ham', self.name + '.py')
|
||||
self.loader = self.machinery.SourceFileLoader(self.name, self.filepath)
|
||||
|
||||
def test_load_module_API(self):
|
||||
class Tester(self.abc.FileLoader):
|
||||
def get_source(self, _): return 'attr = 42'
|
||||
|
@ -53,6 +58,14 @@ class SimpleTest(abc.LoaderTests):
|
|||
with self.assertRaises(ImportError):
|
||||
loader.get_filename(name + 'XXX')
|
||||
|
||||
def test_equality(self):
|
||||
other = self.machinery.SourceFileLoader(self.name, self.filepath)
|
||||
self.assertEqual(self.loader, other)
|
||||
|
||||
def test_inequality(self):
|
||||
other = self.machinery.SourceFileLoader('_' + self.name, self.filepath)
|
||||
self.assertNotEqual(self.loader, other)
|
||||
|
||||
# [basic]
|
||||
def test_module(self):
|
||||
with source_util.create_modules('_temp') as mapping:
|
||||
|
|
|
@ -288,8 +288,7 @@ class FindSpecTests:
|
|||
self.assertNotIn(name, sorted(sys.modules))
|
||||
# Ensure successive calls behave the same.
|
||||
spec_again = self.init.find_spec(fullname, [pkg_dir])
|
||||
# XXX Once #19927 is resolved, uncomment this line.
|
||||
#self.assertEqual(spec_again, spec)
|
||||
self.assertEqual(spec_again, spec)
|
||||
|
||||
def test_find_submodule_missing_path(self):
|
||||
name = 'spam'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue