mirror of
https://github.com/python/cpython.git
synced 2025-08-04 17:08:35 +00:00
Implement test for sys.path_importer_cache having None for
importlib.machinery.PathFinder.
This commit is contained in:
parent
014bf28ef1
commit
48f5c4eec6
1 changed files with 14 additions and 2 deletions
|
@ -3,6 +3,7 @@ from .. import util
|
|||
from . import util as import_util
|
||||
from contextlib import nested
|
||||
from imp import new_module
|
||||
import os
|
||||
import sys
|
||||
from types import MethodType
|
||||
import unittest
|
||||
|
@ -191,8 +192,19 @@ class FinderTests(unittest.TestCase):
|
|||
def test_path_importer_cache_has_None(self):
|
||||
# Test that the default hook is used when sys.path_importer_cache
|
||||
# contains None for a path.
|
||||
# TODO(brett.cannon) implement
|
||||
pass
|
||||
module = '<test module>'
|
||||
importer = util.mock_modules(module)
|
||||
path = '<test path>'
|
||||
# XXX Not blackbox.
|
||||
original_hook = machinery.PathFinder._default_hook
|
||||
mock_hook = import_util.mock_path_hook(path, importer=importer)
|
||||
machinery.PathFinder._default_hook = staticmethod(mock_hook)
|
||||
try:
|
||||
with util.import_state(path_importer_cache={path: None}):
|
||||
loader = machinery.PathFinder.find_module(module, path=[path])
|
||||
self.assert_(loader is importer)
|
||||
finally:
|
||||
machinery.PathFinder._default_hook = original_hook
|
||||
|
||||
def test_path_hooks(self):
|
||||
# Test that sys.path_hooks is used.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue