mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
Merged revisions 72167 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r72167 | walter.doerwald | 2009-05-01 19:35:37 +0200 (Fr, 01 Mai 2009) | 5 lines Make test.test_support.EnvironmentVarGuard behave like a dictionary. All changes are mirrored to the underlying os.environ dict, but rolled back on exit from the with block. ........
This commit is contained in:
parent
33841c3489
commit
155374d95d
10 changed files with 79 additions and 68 deletions
|
@ -144,23 +144,20 @@ class TclTest(unittest.TestCase):
|
|||
import sys
|
||||
if sys.platform.startswith(('win', 'darwin', 'cygwin')):
|
||||
return # no failure possible on windows?
|
||||
if 'DISPLAY' in os.environ:
|
||||
old_display = os.environ['DISPLAY']
|
||||
del os.environ['DISPLAY']
|
||||
# on some platforms, deleting environment variables
|
||||
# doesn't actually carry through to the process level
|
||||
# because they don't support unsetenv
|
||||
# If that's the case, abort.
|
||||
display = os.popen('echo $DISPLAY').read().strip()
|
||||
if display:
|
||||
return
|
||||
try:
|
||||
with support.EnvironmentVarGuard() as env:
|
||||
if 'DISPLAY' in os.environ:
|
||||
del env['DISPLAY']
|
||||
# on some platforms, deleting environment variables
|
||||
# doesn't actually carry through to the process level
|
||||
# because they don't support unsetenv
|
||||
# If that's the case, abort.
|
||||
display = os.popen('echo $DISPLAY').read().strip()
|
||||
if display:
|
||||
return
|
||||
|
||||
tcl = Tcl()
|
||||
self.assertRaises(TclError, tcl.winfo_geometry)
|
||||
self.assertRaises(TclError, tcl.loadtk)
|
||||
finally:
|
||||
if old_display is not None:
|
||||
os.environ['DISPLAY'] = old_display
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(TclTest, TkinterTest)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue