Commit ec3c5e39 authored by Neal Norwitz's avatar Neal Norwitz

Verify that the signal handlers were really called

parent c173b488
...@@ -25,7 +25,11 @@ script = """ ...@@ -25,7 +25,11 @@ script = """
) & ) &
""" % vars() """ % vars()
a_called = b_called = False
def handlerA(*args): def handlerA(*args):
global a_called
a_called = True
if verbose: if verbose:
print "handlerA", args print "handlerA", args
...@@ -33,6 +37,8 @@ class HandlerBCalled(Exception): ...@@ -33,6 +37,8 @@ class HandlerBCalled(Exception):
pass pass
def handlerB(*args): def handlerB(*args):
global b_called
b_called = True
if verbose: if verbose:
print "handlerB", args print "handlerB", args
raise HandlerBCalled, args raise HandlerBCalled, args
...@@ -88,6 +94,12 @@ try: ...@@ -88,6 +94,12 @@ try:
if verbose: if verbose:
print "KeyboardInterrupt (assume the alarm() went off)" print "KeyboardInterrupt (assume the alarm() went off)"
if not a_called:
print 'HandlerA not called'
if not b_called:
print 'HandlerB not called'
finally: finally:
signal.signal(signal.SIGHUP, hup) signal.signal(signal.SIGHUP, hup)
signal.signal(signal.SIGUSR1, usr1) signal.signal(signal.SIGUSR1, usr1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment