Improve signal test

This commit is contained in:
Aviv Palivoda
2019-07-31 20:03:08 +03:00
parent 56b555b905
commit 785b5d8af7

View File

@@ -1,5 +1,8 @@
import signal
import time
from testutils import assert_raises
assert_raises(TypeError, lambda: signal.signal(signal.SIGINT, 2))
signals = []
@@ -7,10 +10,24 @@ def handler(signum, frame):
signals.append(signum)
signal.signal(14, handler)
assert signal.getsignal(14) is handler
signal.signal(signal.SIGALRM, handler)
assert signal.getsignal(signal.SIGALRM) is handler
signal.alarm(1)
time.sleep(2.0)
assert signals == [signal.SIGALRM]
signal.signal(signal.SIGALRM, signal.SIG_IGN)
signal.alarm(1)
time.sleep(2.0)
assert signals == [signal.SIGALRM]
signal.signal(signal.SIGALRM, handler)
signal.alarm(1)
time.sleep(2.0)
assert signals == [signal.SIGALRM, signal.SIGALRM]
signal.alarm(2)
time.sleep(3.0)
assert signals == [14]