From: Victor Stinner Date: Tue, 10 Oct 2023 23:59:43 +0000 (+0200) Subject: gh-110647: Fix signal test_stress_modifying_handlers() (#110650) X-Git-Tag: v3.13.0a1~48 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e07c37cd5212c9d13749b4d02a1d68e1efcba6cf;p=thirdparty%2FPython%2Fcpython.git gh-110647: Fix signal test_stress_modifying_handlers() (#110650) * cycle_handlers() now waits until at least one signal is received. * num_received_signals can be equal to num_sent_signals. --- diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py index 2a1a1ee22f43..f2ae28c38dd7 100644 --- a/Lib/test/test_signal.py +++ b/Lib/test/test_signal.py @@ -1339,7 +1339,7 @@ class StressTest(unittest.TestCase): num_sent_signals += 1 def cycle_handlers(): - while num_sent_signals < 100: + while num_sent_signals < 100 or num_received_signals < 1: for i in range(20000): # Cycle between a Python-defined and a non-Python handler for handler in [custom_handler, signal.SIG_IGN]: @@ -1372,7 +1372,7 @@ class StressTest(unittest.TestCase): if not ignored: # Sanity check that some signals were received, but not all self.assertGreater(num_received_signals, 0) - self.assertLess(num_received_signals, num_sent_signals) + self.assertLessEqual(num_received_signals, num_sent_signals) finally: do_stop = True t.join() diff --git a/Misc/NEWS.d/next/Tests/2023-10-10-23-20-13.gh-issue-110647.jKG3sY.rst b/Misc/NEWS.d/next/Tests/2023-10-10-23-20-13.gh-issue-110647.jKG3sY.rst new file mode 100644 index 000000000000..00f38c844755 --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2023-10-10-23-20-13.gh-issue-110647.jKG3sY.rst @@ -0,0 +1,2 @@ +Fix test_stress_modifying_handlers() of test_signal. Patch by Victor +Stinner.