[Jython-checkins] jython: Update regrtest skips and test_support.
frank.wierzbicki
jython-checkins at python.org
Sat Apr 7 04:31:13 CEST 2012
http://hg.python.org/jython/rev/97c33fee26cd
changeset: 6547:97c33fee26cd
user: Frank Wierzbicki <fwierzbicki at gmail.com>
date: Fri Apr 06 19:31:01 2012 -0700
summary:
Update regrtest skips and test_support.
files:
Lib/test/regrtest.py | 3 ++
Lib/test/test_support.py | 38 +++++++++++++++++++--------
2 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -1224,6 +1224,7 @@
test_memoryview
test_mhlib
test_mmap
+ test_modulefinder
test_msilib
test_multiprocessing
test_nis
@@ -1240,6 +1241,7 @@
test_socket_ssl
test_socketserver
test_sqlite
+ test_ssl
test_startfile
test_strop
test_structmembers
@@ -1249,6 +1251,7 @@
test_tcl
test_timeout
test_tk
+ test_tools
test_ttk_guionly
test_ttk_textonly
test_unicode_file
diff --git a/Lib/test/test_support.py b/Lib/test/test_support.py
--- a/Lib/test/test_support.py
+++ b/Lib/test/test_support.py
@@ -724,26 +724,39 @@
sys.modules.update(self.original_modules)
-class EnvironmentVarGuard(object):
+class EnvironmentVarGuard(UserDict.DictMixin):
"""Class to help protect the environment variable properly. Can be used as
a context manager."""
def __init__(self):
+ self._environ = os.environ
self._changed = {}
- def set(self, envvar, value):
+ def __getitem__(self, envvar):
+ return self._environ[envvar]
+
+ def __setitem__(self, envvar, value):
# Remember the initial value on the first access
if envvar not in self._changed:
- self._changed[envvar] = os.environ.get(envvar)
- os.environ[envvar] = value
+ self._changed[envvar] = self._environ.get(envvar)
+ self._environ[envvar] = value
+
+ def __delitem__(self, envvar):
+ # Remember the initial value on the first access
+ if envvar not in self._changed:
+ self._changed[envvar] = self._environ.get(envvar)
+ if envvar in self._environ:
+ del self._environ[envvar]
+
+ def keys(self):
+ return self._environ.keys()
+
+ def set(self, envvar, value):
+ self[envvar] = value
def unset(self, envvar):
- # Remember the initial value on the first access
- if envvar not in self._changed:
- self._changed[envvar] = os.environ.get(envvar)
- if envvar in os.environ:
- del os.environ[envvar]
+ del self[envvar]
def __enter__(self):
return self
@@ -751,10 +764,11 @@
def __exit__(self, *ignore_exc):
for (k, v) in self._changed.items():
if v is None:
- if k in os.environ:
- del os.environ[k]
+ if k in self._environ:
+ del self._environ[k]
else:
- os.environ[k] = v
+ self._environ[k] = v
+ os.environ = self._environ
class TransientResource(object):
--
Repository URL: http://hg.python.org/jython
More information about the Jython-checkins
mailing list