| #!/usr/bin/env python | 
 |  | 
 | import time | 
 | import subprocess | 
 | import sys | 
 | import os | 
 | import signal | 
 |  | 
 | def relfile(fname): | 
 |     return os.path.join(os.path.dirname(__file__), fname) | 
 |  | 
 | def runTest(server_class): | 
 |     print "Testing ", server_class | 
 |     serverproc = subprocess.Popen([sys.executable, relfile("TestServer.py"), server_class]) | 
 |     try: | 
 |  | 
 |         ret = subprocess.call([sys.executable, relfile("TestClient.py")]) | 
 |         if ret != 0: | 
 |             raise Exception("subprocess failed") | 
 |     finally: | 
 |         # fixme: should check that server didn't die | 
 |         os.kill(serverproc.pid, signal.SIGKILL) | 
 |  | 
 |     # wait for shutdown | 
 |     time.sleep(5) | 
 |  | 
 | map(runTest, ["TForkingServer", "TThreadPoolServer", | 
 |               "TThreadedServer", "TSimpleServer"]) |