Merged revisions 71984 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r71984 | walter.doerwald | 2009-04-26 22:51:44 +0200 (So, 26 Apr 2009) | 2 lines Use test.test_support.EnvironmentVarGuard where tests change environment vars. ........
This commit is contained in:
parent
9a0517c2cc
commit
536120e34d
|
@ -1464,15 +1464,9 @@ class TestHelp(BaseTest):
|
||||||
# we must restore its original value -- otherwise, this test
|
# we must restore its original value -- otherwise, this test
|
||||||
# screws things up for other tests when it's part of the Python
|
# screws things up for other tests when it's part of the Python
|
||||||
# test suite.
|
# test suite.
|
||||||
orig_columns = os.environ.get('COLUMNS')
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
os.environ['COLUMNS'] = str(columns)
|
env.set('COLUMNS', str(columns))
|
||||||
try:
|
|
||||||
return InterceptingOptionParser(option_list=options)
|
return InterceptingOptionParser(option_list=options)
|
||||||
finally:
|
|
||||||
if orig_columns is None:
|
|
||||||
del os.environ['COLUMNS']
|
|
||||||
else:
|
|
||||||
os.environ['COLUMNS'] = orig_columns
|
|
||||||
|
|
||||||
def assertHelpEquals(self, expected_output):
|
def assertHelpEquals(self, expected_output):
|
||||||
if type(expected_output) is types.UnicodeType:
|
if type(expected_output) is types.UnicodeType:
|
||||||
|
@ -1499,16 +1493,10 @@ class TestHelp(BaseTest):
|
||||||
self.assertHelpEquals(_expected_help_long_opts_first)
|
self.assertHelpEquals(_expected_help_long_opts_first)
|
||||||
|
|
||||||
def test_help_title_formatter(self):
|
def test_help_title_formatter(self):
|
||||||
save = os.environ.get("COLUMNS")
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
try:
|
env.set("COLUMNS", "80")
|
||||||
os.environ["COLUMNS"] = "80"
|
|
||||||
self.parser.formatter = TitledHelpFormatter()
|
self.parser.formatter = TitledHelpFormatter()
|
||||||
self.assertHelpEquals(_expected_help_title_formatter)
|
self.assertHelpEquals(_expected_help_title_formatter)
|
||||||
finally:
|
|
||||||
if save is not None:
|
|
||||||
os.environ["COLUMNS"] = save
|
|
||||||
else:
|
|
||||||
del os.environ["COLUMNS"]
|
|
||||||
|
|
||||||
def test_wrap_columns(self):
|
def test_wrap_columns(self):
|
||||||
# Ensure that wrapping respects $COLUMNS environment variable.
|
# Ensure that wrapping respects $COLUMNS environment variable.
|
||||||
|
|
|
@ -345,10 +345,9 @@ class PosixPathTest(unittest.TestCase):
|
||||||
self.assert_(isinstance(posixpath.expanduser("~root/"), basestring))
|
self.assert_(isinstance(posixpath.expanduser("~root/"), basestring))
|
||||||
self.assert_(isinstance(posixpath.expanduser("~foo/"), basestring))
|
self.assert_(isinstance(posixpath.expanduser("~foo/"), basestring))
|
||||||
|
|
||||||
orig_home = os.environ['HOME']
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
os.environ['HOME'] = '/'
|
env.set('HOME', '/')
|
||||||
self.assertEqual(posixpath.expanduser("~"), "/")
|
self.assertEqual(posixpath.expanduser("~"), "/")
|
||||||
os.environ['HOME'] = orig_home
|
|
||||||
|
|
||||||
self.assertRaises(TypeError, posixpath.expanduser)
|
self.assertRaises(TypeError, posixpath.expanduser)
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ executing have not been removed.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
import unittest
|
import unittest
|
||||||
from test.test_support import TestSkipped, run_unittest, TESTFN
|
from test.test_support import TestSkipped, run_unittest, TESTFN, EnvironmentVarGuard
|
||||||
import __builtin__
|
import __builtin__
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
|
@ -149,13 +149,11 @@ class test__candidate_tempdir_list(TC):
|
||||||
# _candidate_tempdir_list contains the expected directories
|
# _candidate_tempdir_list contains the expected directories
|
||||||
|
|
||||||
# Make sure the interesting environment variables are all set.
|
# Make sure the interesting environment variables are all set.
|
||||||
added = []
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
try:
|
|
||||||
for envname in 'TMPDIR', 'TEMP', 'TMP':
|
for envname in 'TMPDIR', 'TEMP', 'TMP':
|
||||||
dirname = os.getenv(envname)
|
dirname = os.getenv(envname)
|
||||||
if not dirname:
|
if not dirname:
|
||||||
os.environ[envname] = os.path.abspath(envname)
|
env.set(envname, os.path.abspath(envname))
|
||||||
added.append(envname)
|
|
||||||
|
|
||||||
cand = tempfile._candidate_tempdir_list()
|
cand = tempfile._candidate_tempdir_list()
|
||||||
|
|
||||||
|
@ -173,9 +171,6 @@ class test__candidate_tempdir_list(TC):
|
||||||
|
|
||||||
# Not practical to try to verify the presence of OS-specific
|
# Not practical to try to verify the presence of OS-specific
|
||||||
# paths in this list.
|
# paths in this list.
|
||||||
finally:
|
|
||||||
for p in added:
|
|
||||||
del os.environ[p]
|
|
||||||
|
|
||||||
test_classes.append(test__candidate_tempdir_list)
|
test_classes.append(test__candidate_tempdir_list)
|
||||||
|
|
||||||
|
|
|
@ -98,20 +98,20 @@ class urlopen_FileTests(unittest.TestCase):
|
||||||
class ProxyTests(unittest.TestCase):
|
class ProxyTests(unittest.TestCase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
# Save all proxy related env vars
|
# Records changes to env vars
|
||||||
self._saved_environ = dict([(k, v) for k, v in os.environ.iteritems()
|
self.env = test_support.EnvironmentVarGuard()
|
||||||
if k.lower().find('proxy') >= 0])
|
|
||||||
# Delete all proxy related env vars
|
# Delete all proxy related env vars
|
||||||
for k in self._saved_environ:
|
for k, v in os.environ.iteritems():
|
||||||
del os.environ[k]
|
if 'proxy' in k.lower():
|
||||||
|
env.unset(k)
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
# Restore all proxy related env vars
|
# Restore all proxy related env vars
|
||||||
for k, v in self._saved_environ.iteritems():
|
self.env.__exit__()
|
||||||
os.environ[k] = v
|
del self.env
|
||||||
|
|
||||||
def test_getproxies_environment_keep_no_proxies(self):
|
def test_getproxies_environment_keep_no_proxies(self):
|
||||||
os.environ['NO_PROXY'] = 'localhost'
|
self.env.set('NO_PROXY', 'localhost')
|
||||||
proxies = urllib.getproxies_environment()
|
proxies = urllib.getproxies_environment()
|
||||||
# getproxies_environment use lowered case truncated (no '_proxy') keys
|
# getproxies_environment use lowered case truncated (no '_proxy') keys
|
||||||
self.assertEquals('localhost', proxies['no'])
|
self.assertEquals('localhost', proxies['no'])
|
||||||
|
|
|
@ -583,7 +583,8 @@ class CGIHandlerTestCase(unittest.TestCase):
|
||||||
self.cgi = None
|
self.cgi = None
|
||||||
|
|
||||||
def test_cgi_get(self):
|
def test_cgi_get(self):
|
||||||
os.environ['REQUEST_METHOD'] = 'GET'
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
|
env.set('REQUEST_METHOD', 'GET')
|
||||||
# if the method is GET and no request_text is given, it runs handle_get
|
# if the method is GET and no request_text is given, it runs handle_get
|
||||||
# get sysout output
|
# get sysout output
|
||||||
tmp = sys.stdout
|
tmp = sys.stdout
|
||||||
|
@ -601,7 +602,6 @@ class CGIHandlerTestCase(unittest.TestCase):
|
||||||
self.assertEqual(message, 'Bad Request')
|
self.assertEqual(message, 'Bad Request')
|
||||||
|
|
||||||
os.remove(test_support.TESTFN)
|
os.remove(test_support.TESTFN)
|
||||||
os.environ['REQUEST_METHOD'] = ''
|
|
||||||
|
|
||||||
def test_cgi_xmlrpc_response(self):
|
def test_cgi_xmlrpc_response(self):
|
||||||
data = """<?xml version='1.0'?>
|
data = """<?xml version='1.0'?>
|
||||||
|
@ -624,11 +624,9 @@ class CGIHandlerTestCase(unittest.TestCase):
|
||||||
sys.stdin = open("xmldata.txt", "r")
|
sys.stdin = open("xmldata.txt", "r")
|
||||||
sys.stdout = open(test_support.TESTFN, "w")
|
sys.stdout = open(test_support.TESTFN, "w")
|
||||||
|
|
||||||
os.environ['CONTENT_LENGTH'] = str(len(data))
|
with test_support.EnvironmentVarGuard() as env:
|
||||||
try:
|
env.set('CONTENT_LENGTH', str(len(data)))
|
||||||
self.cgi.handle_request()
|
self.cgi.handle_request()
|
||||||
finally:
|
|
||||||
del os.environ['CONTENT_LENGTH']
|
|
||||||
|
|
||||||
sys.stdin.close()
|
sys.stdin.close()
|
||||||
sys.stdout.close()
|
sys.stdout.close()
|
||||||
|
|
Loading…
Reference in New Issue