mirror of
https://github.com/python/cpython.git
synced 2024-12-17 22:05:04 +08:00
baab5f7341
Skip test_open() and test_os_open(): both tests uses a FIFO and signals, but there is a bug in the FreeBSD kernel which blocks the test. Skip the tests until the bug is fixed in FreeBSD kernel. Remove also debug traces from test_eintr: * stop using faulthandler to have a timeout * remove print() Write also open and close on two lines in test_open() and test_os_open() tests. If these tests block again, we can know if the test is stuck at open or close. test_eintr: don't always run the test in debug mode.
31 lines
857 B
Python
31 lines
857 B
Python
import os
|
|
import signal
|
|
import subprocess
|
|
import sys
|
|
import unittest
|
|
|
|
from test import support
|
|
from test.support import script_helper
|
|
|
|
|
|
@unittest.skipUnless(os.name == "posix", "only supported on Unix")
|
|
class EINTRTests(unittest.TestCase):
|
|
|
|
@unittest.skipUnless(hasattr(signal, "setitimer"), "requires setitimer()")
|
|
def test_all(self):
|
|
# Run the tester in a sub-process, to make sure there is only one
|
|
# thread (for reliable signal delivery).
|
|
tester = support.findfile("eintr_tester.py", subdir="eintrdata")
|
|
|
|
if support.verbose:
|
|
args = [sys.executable, tester]
|
|
with subprocess.Popen(args) as proc:
|
|
exitcode = proc.wait()
|
|
self.assertEqual(exitcode, 0)
|
|
else:
|
|
script_helper.assert_python_ok(tester)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|