bpo-30107: don't dump core on expected test_io crash (#1235) (#1241)

test_io has two unit tests which trigger a deadlock:

* test_daemon_threads_shutdown_stdout_deadlock()
* test_daemon_threads_shutdown_stderr_deadlock()

These tests call Py_FatalError() if the expected bug is triggered
which calls abort(). Use test.support.SuppressCrashReport to prevent
the creation on a core dump, to fix the warning:

Warning -- files was modified by test_io
  Before: []
  After:  ['python.core']
(cherry picked from commit 2a1aed04b0)
This commit is contained in:
Victor Stinner 2017-04-21 18:27:29 +02:00 committed by GitHub
parent 483729526e
commit b984a05d55
1 changed files with 5 additions and 0 deletions

View File

@ -3720,6 +3720,7 @@ class CMiscIOTest(MiscIOTest):
import sys
import time
import threading
from test.support import SuppressCrashReport
file = sys.{stream_name}
@ -3728,6 +3729,10 @@ class CMiscIOTest(MiscIOTest):
file.write('.')
file.flush()
crash = SuppressCrashReport()
crash.__enter__()
# don't call __exit__(): the crash occurs at Python shutdown
thread = threading.Thread(target=run)
thread.daemon = True
thread.start()