mirror of
https://github.com/python/cpython.git
synced 2025-07-25 12:14:38 +00:00

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.
30 lines
767 B
Python
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()
|