[svn] commit: r3346 - in /branches/trac352/src/lib/python/isc/utils: serve_mixin.py tests/serve_mixin_test.py
BIND 10 source code commits
bind10-changes at lists.isc.org
Mon Oct 25 10:39:15 UTC 2010
Author: zhanglikun
Date: Mon Oct 25 10:39:15 2010
New Revision: 3346
Log:
code cleanup and fix the error in the test case.
Modified:
branches/trac352/src/lib/python/isc/utils/serve_mixin.py
branches/trac352/src/lib/python/isc/utils/tests/serve_mixin_test.py
Modified: branches/trac352/src/lib/python/isc/utils/serve_mixin.py
==============================================================================
--- branches/trac352/src/lib/python/isc/utils/serve_mixin.py (original)
+++ branches/trac352/src/lib/python/isc/utils/serve_mixin.py Mon Oct 25 10:39:15 2010
@@ -54,7 +54,7 @@
'''
def __init__(self):
self.__read_sock, self.__write_sock = socket.socketpair()
- self.__is_shut_down = threading.Event()
+ self._is_shut_down = threading.Event()
def serve_forever(self, poll_interval=None):
''' Overrides the serve_forever([poll_interval]) in class
@@ -73,7 +73,6 @@
if err.args[0] == EINTR:
continue
else:
- sys.stderr.write("Error with select(), %s\n", err)
break
if self.__read_sock in r:
@@ -81,7 +80,7 @@
else:
self._handle_request_noblock()
- self.__is_shut_down.set()
+ self._is_shut_down.set()
def shutdown(self):
'''Stops the serve_forever loop.
@@ -90,4 +89,4 @@
in another thread when serve_forever is running, or it will block.
'''
self.__write_sock.send(SOCK_DATA) # make self.__read_sock readable.
- self.__is_shut_down.wait() # wait until the serve thread terminate
+ self._is_shut_down.wait() # wait until the serve thread terminate
Modified: branches/trac352/src/lib/python/isc/utils/tests/serve_mixin_test.py
==============================================================================
--- branches/trac352/src/lib/python/isc/utils/tests/serve_mixin_test.py (original)
+++ branches/trac352/src/lib/python/isc/utils/tests/serve_mixin_test.py Mon Oct 25 10:39:15 2010
@@ -47,18 +47,15 @@
server = MyServer(('127.0.0.1', 0), MyHandler)
ip, port = server.server_address
server_thread = threading.Thread(target=server.serve_forever)
- server_thread.setDaemon(True)
server_thread.start()
msg = b'senddata'
self.assertEqual(msg, send_and_get_reply(ip, port, msg))
self.assertTrue(server_thread.is_alive())
- # Now shutdown the server
- server.shutdown()
- # Sleep a while, make sure the thread has finished.
- time.sleep(0.1)
- self.assertFalse(server_thread.is_alive())
+ self.assertFalse(server._is_shut_down.is_set())
+ server.shutdown() # Now shutdown the server
+ self.assertTrue(server._is_shut_down.is_set())
if __name__== "__main__":
unittest.main()
More information about the bind10-changes
mailing list