Issue #12400: test.support.run_doctest() doesn't change sys.stdout anymore
regrtest doesn't check that tests doesn't write something to stdout anymore.
Don't replace sys.stdout by the original sys.stdout to be able to capture the
output for regrtest -W.
diff --git a/Lib/test/support.py b/Lib/test/support.py
index a51d943..d4010f4 100644
--- a/Lib/test/support.py
+++ b/Lib/test/support.py
@@ -1298,16 +1298,9 @@
else:
verbosity = None
- # Direct doctest output (normally just errors) to real stdout; doctest
- # output shouldn't be compared by regrtest.
- save_stdout = sys.stdout
- sys.stdout = get_original_stdout()
- try:
- f, t = doctest.testmod(module, verbose=verbosity)
- if f:
- raise TestFailed("%d of %d doctests failed" % (f, t))
- finally:
- sys.stdout = save_stdout
+ f, t = doctest.testmod(module, verbose=verbosity)
+ if f:
+ raise TestFailed("%d of %d doctests failed" % (f, t))
if verbose:
print('doctest (%s) ... %d tests with zero failures' %
(module.__name__, t))