cpython/Lib/test/test_wait4.py
Neal Norwitz b15ac3169d Add new utility function, reap_children(), to test_support. This should
be called at the end of each test that spawns children (perhaps it
should be called from regrtest instead?).  This will hopefully prevent
some of the unexplained failures in the buildbots (hppa and alpha)
during tests that spawn children.  The problems were not reproducible.
There were many zombies that remained at the end of several tests.
In the worst case, this shouldn't cause any more problems,
though it may not help either.  Time will tell.
2006-06-29 04:10:08 +00:00

30 lines
767 B
Python

"""This test checks for correct wait4() behavior.
"""
import os
from test.fork_wait import ForkWait
from test.test_support import TestSkipped, run_unittest, reap_children
try:
os.fork
except AttributeError:
raise TestSkipped, "os.fork not defined -- skipping test_wait4"
try:
os.wait4
except AttributeError:
raise TestSkipped, "os.wait4 not defined -- skipping test_wait4"
class Wait4Test(ForkWait):
def wait_impl(self, cpid):
spid, status, rusage = os.wait4(cpid, 0)
self.assertEqual(spid, cpid)
self.assertEqual(status, 0, "cause = %d, exit = %d" % (status&0xff, status>>8))
self.assertTrue(rusage)
def test_main():
run_unittest(Wait4Test)
reap_children()
if __name__ == "__main__":
test_main()