[Python-checkins] cpython: Issue #12469: fix signal order check of test_signal
victor.stinner
python-checkins at python.org
Tue Jul 5 01:34:35 CEST 2011
http://hg.python.org/cpython/rev/f12b8548b4aa
changeset: 71215:f12b8548b4aa
user: Victor Stinner <victor.stinner at haypocalc.com>
date: Tue Jul 05 01:32:06 2011 +0200
summary:
Issue #12469: fix signal order check of test_signal
When signals are unblocked, pending signal ared delivered in the reverse order
of their number (also on Linux, not only on FreeBSD 6).
Don't sort signals by their number if signals were not blocked (test_signum).
files:
Lib/test/test_signal.py | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py
--- a/Lib/test/test_signal.py
+++ b/Lib/test/test_signal.py
@@ -240,10 +240,6 @@
def check_signum(signals):
data = os.read(read, len(signals)+1)
raised = struct.unpack('%uB' % len(data), data)
- if sys.platform == 'freebsd6':
- # when signals are unblocked, FreeBSD 6 delivers signals in the
- # reverse order of their number
- signals = tuple(sorted(signals, reverse=False))
if raised != signals:
raise Exception("%r != %r" % (raised, signals))
@@ -323,6 +319,11 @@
@unittest.skipUnless(hasattr(signal, 'pthread_sigmask'),
'need signal.pthread_sigmask()')
def test_pending(self):
+ signals = (signal.SIGUSR1, signal.SIGUSR2)
+ # when signals are unblocked, pending signal ared delivered in the
+ # reverse order of their number
+ signals = tuple(sorted(signals, reverse=True))
+
self.check_wakeup("""def test():
signum1 = signal.SIGUSR1
signum2 = signal.SIGUSR2
@@ -335,7 +336,7 @@
os.kill(os.getpid(), signum2)
# Unblocking the 2 signals calls the C signal handler twice
signal.pthread_sigmask(signal.SIG_UNBLOCK, (signum1, signum2))
- """, signal.SIGUSR1, signal.SIGUSR2)
+ """, *signals)
@unittest.skipIf(sys.platform == "win32", "Not valid on Windows")
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list