bpo-40094: Enhance fork and wait tests (GH-19259)
* test_fork1: remove duplicated wait_impl() method: reuse
fork_wait.py implementation instead.
* Use exit code different than 0 to ensure that we executed the
expected code path.
diff --git a/Lib/test/test_wait4.py b/Lib/test/test_wait4.py
index a186072..6c7ebcb 100644
--- a/Lib/test/test_wait4.py
+++ b/Lib/test/test_wait4.py
@@ -14,7 +14,7 @@
class Wait4Test(ForkWait):
- def wait_impl(self, cpid):
+ def wait_impl(self, cpid, *, exitcode):
option = os.WNOHANG
if sys.platform.startswith('aix'):
# Issue #11185: wait4 is broken on AIX and will always return 0
@@ -29,7 +29,8 @@
break
time.sleep(0.1)
self.assertEqual(spid, cpid)
- self.assertEqual(status, 0, "cause = %d, exit = %d" % (status&0xff, status>>8))
+ self.assertEqual(status, exitcode << 8,
+ "cause = %d, exit = %d" % (status&0xff, status>>8))
self.assertTrue(rusage)
def tearDownModule():