[Python-checkins] gh-92265: set meta_path and path_hooks correctly in test_reload_namespace_changed (GH-92275)

miss-islington webhook-mailer at python.org
Mon May 16 19:05:55 EDT 2022


https://github.com/python/cpython/commit/c7d699969c81dbadd26fa2af5bc647fa5579eb08
commit: c7d699969c81dbadd26fa2af5bc647fa5579eb08
branch: main
author: Filipe Laíns <lains at archlinux.org>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2022-05-16T16:05:47-07:00
summary:

gh-92265: set meta_path and path_hooks correctly in test_reload_namespace_changed (GH-92275)



Previously, we were blocking the frozen imports and forcing the source
version to be used, but we did not fix up sys.meta_path or
sys.path_hooks, causing the frozen importers to leak into the source
version of the test.

files:
M Lib/test/test_importlib/test_api.py

diff --git a/Lib/test/test_importlib/test_api.py b/Lib/test/test_importlib/test_api.py
index 1f8f7c00bda53..ddf80947b9df4 100644
--- a/Lib/test/test_importlib/test_api.py
+++ b/Lib/test/test_importlib/test_api.py
@@ -301,7 +301,8 @@ def test_reload_namespace_changed(self):
         name = 'spam'
         with os_helper.temp_cwd(None) as cwd:
             with test_util.uncache('spam'):
-                with import_helper.DirsOnSysPath(cwd):
+                with test_util.import_state(path=[cwd]):
+                    self.init._bootstrap_external._install(self.init._bootstrap)
                     # Start as a namespace package.
                     self.init.invalidate_caches()
                     bad_path = os.path.join(cwd, name, '__init.py')



More information about the Python-checkins mailing list