diff options
author | Brett Cannon <bcannon@gmail.com> | 2009-02-05 23:36:02 (GMT) |
---|---|---|
committer | Brett Cannon <bcannon@gmail.com> | 2009-02-05 23:36:02 (GMT) |
commit | 1f9bcd38a9868b0d320681c603d5b4aa20ec54fe (patch) | |
tree | d2d186f128500e255a54ccda482881230ebc842c /Lib | |
parent | 5874ef16edfa34cf6ff184e56ada8b78687b689f (diff) | |
download | cpython-1f9bcd38a9868b0d320681c603d5b4aa20ec54fe.zip cpython-1f9bcd38a9868b0d320681c603d5b4aa20ec54fe.tar.gz cpython-1f9bcd38a9868b0d320681c603d5b4aa20ec54fe.tar.bz2 |
Add tests for using sys.path_hooks by importlib.machinery.PathFinder.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/importlib/_bootstrap.py | 2 | ||||
-rw-r--r-- | Lib/importlib/test/import_/test_path.py | 12 |
2 files changed, 11 insertions, 3 deletions
diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 849dabb..8eff65c 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -601,7 +601,7 @@ class PathFinder: @classmethod def _implicit_hooks(cls): """Return a list of the implicit path hooks.""" - return [self._default_hook, imp.NullImporter] + return [cls._default_hook, imp.NullImporter] @classmethod def _path_hooks(cls, path): diff --git a/Lib/importlib/test/import_/test_path.py b/Lib/importlib/test/import_/test_path.py index 70dae2f..6bace12 100644 --- a/Lib/importlib/test/import_/test_path.py +++ b/Lib/importlib/test/import_/test_path.py @@ -208,8 +208,16 @@ class FinderTests(unittest.TestCase): def test_path_hooks(self): # Test that sys.path_hooks is used. - # TODO(brett.cannon) implement - pass + # Test that sys.path_importer_cache is set. + module = '<test module>' + path = '<test path>' + importer = util.mock_modules(module) + hook = import_util.mock_path_hook(path, importer=importer) + with util.import_state(path_hooks=[hook]): + loader = machinery.PathFinder.find_module(module, [path]) + self.assert_(loader is importer) + self.assert_(path in sys.path_importer_cache) + self.assert_(sys.path_importer_cache[path] is importer) def test_implicit_hooks(self): # Test that the implicit path hooks are used. |