mirror of
https://github.com/python/cpython.git
synced 2025-11-01 02:38:53 +00:00
Patch #1309579: wait3 and wait4 were added to the posix module by Chad J. Schroeder.
This was a fair amount of rework of the patch. Refactored test_fork1 so it could be reused by the new tests for wait3/4. Also made them into new style unittests (derive from unittest.TestCase).
This commit is contained in:
parent
910b5eec07
commit
05a45599d7
11 changed files with 307 additions and 67 deletions
29
Lib/test/test_wait4.py
Normal file
29
Lib/test/test_wait4.py
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
"""This test checks for correct wait4() behavior.
|
||||
"""
|
||||
|
||||
import os
|
||||
from test.fork_wait import ForkWait
|
||||
from test.test_support import TestSkipped, run_unittest
|
||||
|
||||
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)
|
||||
|
||||
if __name__ == "__main__":
|
||||
test_main()
|
||||
Loading…
Add table
Add a link
Reference in a new issue