[Python-checkins] python/dist/src/Lib/test test_optparse.py, 1.4,
1.5
tim_one at users.sourceforge.net
tim_one at users.sourceforge.net
Sat Jul 31 23:14:31 CEST 2004
Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24750/Lib/test
Modified Files:
test_optparse.py
Log Message:
Be more careful about reverting mutuations to system-wide (sys) variables.
This fixes 15 spurious test failures on Windows (probably all due to
the test leaving a wrong path in sys.argv[0], which then prevented
regrtest.py from finding the expected-output files for tests running
after test_optparse).
Index: test_optparse.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_optparse.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** test_optparse.py 31 Jul 2004 16:15:44 -0000 1.4
--- test_optparse.py 31 Jul 2004 21:14:28 -0000 1.5
***************
*** 126,142 ****
def assertParseFail(self, cmdline_args, expected_output):
"""Assert the parser fails with the expected message."""
! sys.stderr = StringIO()
! self.assertRaises(self.parser.parse_args, (cmdline_args,), None,
! SystemExit, expected_output,
! self.redirected_stderr)
! sys.stderr = sys.__stderr__
def assertStdoutEquals(self, cmdline_args, expected_output):
"""Assert the parser prints the expected output on stdout."""
! sys.stdout = StringIO()
! self.assertRaises(self.parser.parse_args, (cmdline_args,), None,
! SystemExit, expected_output,
! self.redirected_stdout)
! sys.stdout = sys.__stdout__
def assertTypeError(self, func, expected_output, *args):
--- 126,148 ----
def assertParseFail(self, cmdline_args, expected_output):
"""Assert the parser fails with the expected message."""
! save_stderr = sys.stderr
! try:
! sys.stderr = StringIO()
! self.assertRaises(self.parser.parse_args, (cmdline_args,), None,
! SystemExit, expected_output,
! self.redirected_stderr)
! finally:
! sys.stderr = save_stderr
def assertStdoutEquals(self, cmdline_args, expected_output):
"""Assert the parser prints the expected output on stdout."""
! save_stdout = sys.stdout
! try:
! sys.stdout = StringIO()
! self.assertRaises(self.parser.parse_args, (cmdline_args,), None,
! SystemExit, expected_output,
! self.redirected_stdout)
! finally:
! sys.stdout = save_stdout
def assertTypeError(self, func, expected_output, *args):
***************
*** 427,440 ****
def test_default_progname(self):
# Make sure that program name taken from sys.argv[0] by default.
! sys.argv[0] = "/foo/bar/baz.py"
! parser = OptionParser("usage: %prog ...", version="%prog 1.2")
! expected_usage = "usage: baz.py ...\n"
! self.assertUsage(parser, expected_usage)
! self.assertVersion(parser, "baz.py 1.2")
! self.assertHelp(parser,
! expected_usage + "\n" +
! "options:\n"
! " --version show program's version number and exit\n"
! " -h, --help show this help message and exit\n")
def test_custom_progname(self):
--- 433,451 ----
def test_default_progname(self):
# Make sure that program name taken from sys.argv[0] by default.
! save_argv = sys.argv[:]
! try:
! # XXX Should the path be hard-coding forward-slashes?
! sys.argv[0] = "/foo/bar/baz.py"
! parser = OptionParser("usage: %prog ...", version="%prog 1.2")
! expected_usage = "usage: baz.py ...\n"
! self.assertUsage(parser, expected_usage)
! self.assertVersion(parser, "baz.py 1.2")
! self.assertHelp(parser,
! expected_usage + "\n" +
! "options:\n"
! " --version show program's version number and exit\n"
! " -h, --help show this help message and exit\n")
! finally:
! sys.argv[:] = save_argv
def test_custom_progname(self):
More information about the Python-checkins
mailing list