summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2009-10-17 15:48:16 (GMT)
committerNick Coghlan <ncoghlan@gmail.com>2009-10-17 15:48:16 (GMT)
commit8157e19e8fe311e8f18542750125a83cc97943f4 (patch)
tree76943701b0bc2626b39fd81a5e435c1b637fe6e4
parentfd4903bf05705d73c8b97d945a50e4e03abad729 (diff)
downloadcpython-8157e19e8fe311e8f18542750125a83cc97943f4.zip
cpython-8157e19e8fe311e8f18542750125a83cc97943f4.tar.gz
cpython-8157e19e8fe311e8f18542750125a83cc97943f4.tar.bz2
Also check and restore identity of sys.path, sys.argv and os.environ rather than just their values (this picked up a few more misbehaving tests)
-rwxr-xr-xLib/test/regrtest.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 8b351d7..be88716 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -683,9 +683,10 @@ class saved_test_environment:
'os.environ', 'sys.path')
def get_sys_argv(self):
- return sys.argv[:]
+ return id(sys.argv), sys.argv, sys.argv[:]
def restore_sys_argv(self, saved_argv):
- sys.argv[:] = saved_argv
+ sys.argv = saved_argv[1]
+ sys.argv[:] = saved_argv[2]
def get_cwd(self):
return os.getcwd()
@@ -708,15 +709,17 @@ class saved_test_environment:
sys.stdin = saved_stdin
def get_os_environ(self):
- return dict(os.environ)
+ return id(os.environ), os.environ, dict(os.environ)
def restore_os_environ(self, saved_environ):
+ os.environ = saved_environ[1]
os.environ.clear()
- os.environ.update(saved_environ)
+ os.environ.update(saved_environ[2])
def get_sys_path(self):
- return sys.path[:]
+ return id(sys.path), sys.path, sys.path[:]
def restore_sys_path(self, saved_path):
- sys.path[:] = saved_path
+ sys.path = saved_path[1]
+ sys.path[:] = saved_path[2]
def resource_info(self):
for name in self.resources: