Commit 6887c92b authored by Vinay Sajip's avatar Vinay Sajip

Close handlers and tidy up loggers by removing closed handlers - to avoid...

Close handlers and tidy up loggers by removing closed handlers - to avoid problems when run twice (SF #1002537)
parent 4189c643
...@@ -411,7 +411,7 @@ def test_main_inner(): ...@@ -411,7 +411,7 @@ def test_main_inner():
#Set up a handler such that all events are sent via a socket to the log #Set up a handler such that all events are sent via a socket to the log
#receiver (logrecv). #receiver (logrecv).
#The handler will only be added to the rootLogger for some of the tests #The handler will only be added to the rootLogger for some of the tests
hdlr = logging.handlers.SocketHandler('localhost', shdlr = logging.handlers.SocketHandler('localhost',
logging.handlers.DEFAULT_TCP_LOGGING_PORT) logging.handlers.DEFAULT_TCP_LOGGING_PORT)
#Configure the logger for logrecv so events do not propagate beyond it. #Configure the logger for logrecv so events do not propagate beyond it.
...@@ -437,10 +437,10 @@ def test_main_inner(): ...@@ -437,10 +437,10 @@ def test_main_inner():
try: try:
banner("log_test0", "begin") banner("log_test0", "begin")
rootLogger.addHandler(hdlr) rootLogger.addHandler(shdlr)
test0() test0()
hdlr.close() shdlr.close()
rootLogger.removeHandler(hdlr) rootLogger.removeHandler(shdlr)
banner("log_test0", "end") banner("log_test0", "end")
...@@ -463,10 +463,16 @@ def test_main_inner(): ...@@ -463,10 +463,16 @@ def test_main_inner():
thread.join() thread.join()
banner("logrecv output", "begin") banner("logrecv output", "begin")
sys.stdout.write(sockOut.getvalue()) sys.stdout.write(sockOut.getvalue())
sockhdlr.close()
sockOut.close() sockOut.close()
sockLogger.removeHandler(sockhdlr)
sockhdlr.close()
banner("logrecv output", "end") banner("logrecv output", "end")
sys.stdout.flush() sys.stdout.flush()
try:
hdlr.close()
except:
pass
rootLogger.removeHandler(hdlr)
def test_main(): def test_main():
import locale import locale
......
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