summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_atexit.py
blob: 517610b235b4e0393957b1023feec8272c53249e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Test the exit module
from test_support import verbose
import atexit

def handler1():
    print "handler1"

def handler2(*args, **kargs):
    print "handler2", args, kargs

# save any exit functions that may have been registered as part of the
# test framework
_exithandlers = atexit._exithandlers
atexit._exithandlers = []

atexit.register(handler1)
atexit.register(handler2)
atexit.register(handler2, 7, kw="abc")

# simulate exit behavior by calling atexit._run_exitfuncs directly...
atexit._run_exitfuncs()

# restore exit handlers
atexit._exithandlers = _exithandlers