bpo-40094: Add test.support.wait_process() (GH-19254)
Moreover, the following tests now check the child process exit code:
* test_os.PtyTests
* test_mailbox.test_lock_conflict()
* test_tempfile.test_process_awareness()
* test_uuid.testIssue8621()
* multiprocessing resource tracker tests
diff --git a/Lib/test/test_tempfile.py b/Lib/test/test_tempfile.py
index 5fe9506..524ab7c 100644
--- a/Lib/test/test_tempfile.py
+++ b/Lib/test/test_tempfile.py
@@ -200,15 +200,7 @@
child_value = os.read(read_fd, len(parent_value)).decode("ascii")
finally:
if pid:
- # best effort to ensure the process can't bleed out
- # via any bugs above
- try:
- os.kill(pid, signal.SIGKILL)
- except OSError:
- pass
-
- # Read the process exit status to avoid zombie process
- os.waitpid(pid, 0)
+ support.wait_process(pid, exitcode=0)
os.close(read_fd)
os.close(write_fd)