GH-66285: skip asyncio fork tests for platforms without md5 hash (#99745)

Such buildbots (at the time of writing, only "AMD64 RHEL8 FIPS Only Blake2 Builtin Hash 3.x") cannot use multiprocessing with a fork server, so just skip the test there.
This commit is contained in:
Kumar Aditya 2022-11-24 21:36:06 +05:30 committed by GitHub
parent 5d09d11aa0
commit 679d963fc8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 0 deletions

View File

@ -18,6 +18,7 @@ import multiprocessing
from test.support import os_helper from test.support import os_helper
from test.support import socket_helper from test.support import socket_helper
from test.support import wait_process from test.support import wait_process
from test.support import hashlib_helper
if sys.platform == 'win32': if sys.platform == 'win32':
raise unittest.SkipTest('UNIX only') raise unittest.SkipTest('UNIX only')
@ -1893,6 +1894,7 @@ class TestFork(unittest.IsolatedAsyncioTestCase):
self.assertNotEqual(child_loop, id(loop)) self.assertNotEqual(child_loop, id(loop))
wait_process(pid, exitcode=0) wait_process(pid, exitcode=0)
@hashlib_helper.requires_hashdigest('md5')
def test_fork_signal_handling(self): def test_fork_signal_handling(self):
# Sending signal to the forked process should not affect the parent # Sending signal to the forked process should not affect the parent
# process # process
@ -1930,6 +1932,7 @@ class TestFork(unittest.IsolatedAsyncioTestCase):
self.assertFalse(parent_handled.is_set()) self.assertFalse(parent_handled.is_set())
self.assertTrue(child_handled.is_set()) self.assertTrue(child_handled.is_set())
@hashlib_helper.requires_hashdigest('md5')
def test_fork_asyncio_run(self): def test_fork_asyncio_run(self):
ctx = multiprocessing.get_context('fork') ctx = multiprocessing.get_context('fork')
manager = ctx.Manager() manager = ctx.Manager()
@ -1946,6 +1949,7 @@ class TestFork(unittest.IsolatedAsyncioTestCase):
self.assertEqual(result.value, 42) self.assertEqual(result.value, 42)
@hashlib_helper.requires_hashdigest('md5')
def test_fork_asyncio_subprocess(self): def test_fork_asyncio_subprocess(self):
ctx = multiprocessing.get_context('fork') ctx = multiprocessing.get_context('fork')
manager = ctx.Manager() manager = ctx.Manager()