From 592f679dce01dce70f1f917270e84e09c92ff337 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 29 Jun 2011 18:11:36 +0200 Subject: Issue #12400: test_zipimport_support doesn't restore original sys.stdout anymore regrtest doesn't check that a test doesn't output anything anymore. --- Lib/test/test_zipimport_support.py | 31 ++++++++++++------------------- 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/Lib/test/test_zipimport_support.py b/Lib/test/test_zipimport_support.py index 610dfa0..a558d7d 100644 --- a/Lib/test/test_zipimport_support.py +++ b/Lib/test/test_zipimport_support.py @@ -33,26 +33,19 @@ from test import test_doctest, sample_doctest def _run_object_doctest(obj, module): - # Direct doctest output (normally just errors) to real stdout; doctest - # output shouldn't be compared by regrtest. - save_stdout = sys.stdout - sys.stdout = test.support.get_original_stdout() + finder = doctest.DocTestFinder(verbose=verbose, recurse=False) + runner = doctest.DocTestRunner(verbose=verbose) + # Use the object's fully qualified name if it has one + # Otherwise, use the module's name try: - finder = doctest.DocTestFinder(verbose=verbose, recurse=False) - runner = doctest.DocTestRunner(verbose=verbose) - # Use the object's fully qualified name if it has one - # Otherwise, use the module's name - try: - name = "%s.%s" % (obj.__module__, obj.__name__) - except AttributeError: - name = module.__name__ - for example in finder.find(obj, name, module): - runner.run(example) - f, t = runner.failures, runner.tries - if f: - raise test.support.TestFailed("%d of %d doctests failed" % (f, t)) - finally: - sys.stdout = save_stdout + name = "%s.%s" % (obj.__module__, obj.__name__) + except AttributeError: + name = module.__name__ + for example in finder.find(obj, name, module): + runner.run(example) + f, t = runner.failures, runner.tries + if f: + raise test.support.TestFailed("%d of %d doctests failed" % (f, t)) if verbose: print ('doctest (%s) ... %d tests with zero failures' % (module.__name__, t)) return f, t -- cgit v0.12