summaryrefslogtreecommitdiffstats
path: root/Lib/importlib/test
diff options
context:
space:
mode:
authorBrett Cannon <brett@python.org>2012-04-27 19:30:58 (GMT)
committerBrett Cannon <brett@python.org>2012-04-27 19:30:58 (GMT)
commitaa93642a35ed570ba91a80c583df2c8a383686d6 (patch)
treeba6049cf83600cb3afe6d9e8d52c0b9480b5b22b /Lib/importlib/test
parent9e66ac683cce9f6e4abda7d01836dab70eeefb49 (diff)
downloadcpython-aa93642a35ed570ba91a80c583df2c8a383686d6.zip
cpython-aa93642a35ed570ba91a80c583df2c8a383686d6.tar.gz
cpython-aa93642a35ed570ba91a80c583df2c8a383686d6.tar.bz2
Issue #14605: Use None in sys.path_importer_cache to represent no
finder instead of using some (now non-existent) implicit finder.
Diffstat (limited to 'Lib/importlib/test')
-rw-r--r--Lib/importlib/test/import_/test_path.py28
1 files changed, 5 insertions, 23 deletions
diff --git a/Lib/importlib/test/import_/test_path.py b/Lib/importlib/test/import_/test_path.py
index a3a4515..723f5b5 100644
--- a/Lib/importlib/test/import_/test_path.py
+++ b/Lib/importlib/test/import_/test_path.py
@@ -66,36 +66,18 @@ class FinderTests(unittest.TestCase):
self.assertTrue(sys.path_importer_cache[path] is importer)
def test_empty_path_hooks(self):
- # Test that if sys.path_hooks is empty a warning is raised and
- # PathFinder returns None.
- # tried again (with a warning).
+ # Test that if sys.path_hooks is empty a warning is raised,
+ # sys.path_importer_cache gets None set, and PathFinder returns None.
+ path_entry = 'bogus_path'
with util.import_state(path_importer_cache={}, path_hooks=[],
- path=['bogus_path']):
+ path=[path_entry]):
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('always')
self.assertIsNone(machinery.PathFinder.find_module('os'))
- self.assertNotIn('os', sys.path_importer_cache)
+ self.assertIsNone(sys.path_importer_cache[path_entry])
self.assertEqual(len(w), 1)
self.assertTrue(issubclass(w[-1].category, ImportWarning))
- def test_path_importer_cache_has_None_continues(self):
- # Test that having None in sys.path_importer_cache causes the search to
- # continue.
- path = '<test path>'
- module = '<test module>'
- importer = util.mock_modules(module)
- with util.import_state(path=['1', '2'],
- path_importer_cache={'1': None, '2': importer},
- path_hooks=[imp.NullImporter]):
- with warnings.catch_warnings(record=True) as w:
- warnings.simplefilter('always')
- loader = machinery.PathFinder.find_module(module)
- self.assertTrue(loader is importer)
- self.assertEqual(len(w), 1)
- warned = w[0]
- self.assertTrue(issubclass(warned.category, ImportWarning))
- self.assertIn(repr(None), str(warned.message))
-
def test_path_importer_cache_empty_string(self):
# The empty string should create a finder using the cwd.
path = ''