diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2011-06-29 16:11:36 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2011-06-29 16:11:36 (GMT) |
commit | 592f679dce01dce70f1f917270e84e09c92ff337 (patch) | |
tree | c72e96cc77daa9978a80666e725635dba6eec433 | |
parent | 85b3a492d68773a661b4e1eb49083e02a39bffa1 (diff) | |
download | cpython-592f679dce01dce70f1f917270e84e09c92ff337.zip cpython-592f679dce01dce70f1f917270e84e09c92ff337.tar.gz cpython-592f679dce01dce70f1f917270e84e09c92ff337.tar.bz2 |
Issue #12400: test_zipimport_support doesn't restore original sys.stdout
anymore
regrtest doesn't check that a test doesn't output anything anymore.
-rw-r--r-- | Lib/test/test_zipimport_support.py | 31 |
1 files 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 |