From 055470a2279e34f7652f50fc7e549b3ec0ce5ce6 Mon Sep 17 00:00:00 2001 From: Brett Cannon <bcannon@gmail.com> Date: Fri, 19 Feb 2010 15:57:10 +0000 Subject: Check that sys.path_hooks and __import__ are not changed by tests. --- Lib/test/regrtest.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py index 551158c..33a2248 100755 --- a/Lib/test/regrtest.py +++ b/Lib/test/regrtest.py @@ -779,7 +779,7 @@ class saved_test_environment: # the corresponding method names. resources = ('sys.argv', 'cwd', 'sys.stdin', 'sys.stdout', 'sys.stderr', - 'os.environ', 'sys.path') + 'os.environ', 'sys.path', 'sys.path_hooks', '__import__') def get_sys_argv(self): return id(sys.argv), sys.argv, sys.argv[:] @@ -820,6 +820,17 @@ class saved_test_environment: sys.path = saved_path[1] sys.path[:] = saved_path[2] + def get_sys_path_hooks(self): + return id(sys.path_hooks), sys.path_hooks, sys.path_hooks[:] + def restore_sys_path_hooks(self, saved_hooks): + sys.path_hooks = saved_hooks[1] + sys.path_hooks[:] = saved_hooks[2] + + def get___import__(self): + return __builtins__.__import__ + def restore___import__(self, import_): + __builtins__.__import__ = import_ + def resource_info(self): for name in self.resources: method_suffix = name.replace('.', '_') -- cgit v0.12