import os
import signal
+import subprocess
+import sys
import unittest
from test import support
# thread (for reliable signal delivery).
tester = support.findfile("eintr_tester.py", subdir="eintrdata")
# use -u to try to get the full output if the test hangs or crash
- script_helper.assert_python_ok("-u", tester)
+ args = ["-u", tester, "-v"]
+ if support.verbose:
+ print()
+ print("--- run eintr_tester.py ---")
+ # In verbose mode, the child process inherit stdout and stdout,
+ # to see output in realtime and reduce the risk of loosing output.
+ args = [sys.executable, "-E", "-X", "faulthandler", *args]
+ proc = subprocess.run(args)
+ print(f"--- eintr_tester.py completed: exit code {proc.returncode} ---")
+ if proc.returncode:
+ self.fail("eintr_tester.py failed")
+ else:
+ script_helper.assert_python_ok("-u", tester, "-v")
if __name__ == "__main__":