def setup_timbl_server(self): options = "+vo +vdb +vdi %s -f %s" % ( self.descriptor.metrics, os.path.abspath("data/base.inst")) # Timbl server will automatically terminate when TimblServer object # dies, so keep a reference to it self.server = TimblServer(options=options) self.server.start()
def test_restart(self): server = TimblServer(timbl_opts=self.timbl_opts, wait_for_dead=True) server.start() server.restart() self.assertTrue(server.pid) self.assertTrue(server.pid in server.kill_pids) self.assertTrue(os.getpgid(server.pid))
def test_server_logfile(self): log_file = tempfile.NamedTemporaryFile(mode="rb", bufsize=0) log_fname = log_file.name server = TimblServer(timbl_opts=self.timbl_opts, server_log_fname=log_fname) server.start() server.stop() self.assertTrue(open(log_fname).readlines())
def test_logging_2(self): log_fname = tempfile.NamedTemporaryFile().name logger = file_logger("my_log", log_fname) server = TimblServer(timbl_opts=self.timbl_opts, logger=logger) server.start() server.stop() #self.assertTrue(open(log_fname).read()) print open(log_fname).read() os.remove(log_fname)
def _init_server(self, descriptor, inst_fname, inst_base_fname, options, server_log_fname): options = timbl_options_string(descriptor, inst_fname=inst_fname, inst_base_fname=inst_base_fname, other=options) # Timbl server will automatically terminate when TimblServer object # dies, so keep a reference to it self._server = TimblServer(timbl_opts=options, server_log_fname=server_log_fname) self._server.start()
def test_logging_1(self): # quick & global config of logging system so output of loggers # goes to stdout logging.basicConfig(level=logging.DEBUG, format="%(levelname)s <%(name)s> :: %(message)s") server = TimblServer(timbl_opts=self.timbl_opts, wait_for_dead=True, log_tag="server1") server.start() server.stop() # global reset of logging level logging.getLogger().setLevel(logging.CRITICAL)
def test_multiple_servers(self): # make sure there are no left overs TimblServer.kill_pids = [] for i in range(10): server = TimblServer(timbl_opts=self.timbl_opts, wait_for_dead=True) server.start() self.assertEqual(len(TimblServer.kill_pids), 10) for pid in TimblServer.kill_pids: self.assertTrue(os.getpgid(server.pid))
def test_start_and_stop(self): server = TimblServer(timbl_opts=self.timbl_opts, wait_for_dead=True) server.start() self.assertTrue(server.pid) self.assertTrue(server.pid in server.kill_pids) self.assertTrue(os.getpgid(server.pid)) server_pid = server.pid server.stop() self.assertFalse(server.pid) self.assertFalse(server.pid in server.kill_pids) # this requires wait_for_dead=True self.assertRaises(OSError, os.getpgid, server_pid)
def start_timbl_server(): global SERVER options = "-f {0}/dimin.train".format(DATA_DIR) SERVER = TimblServer(timbl_opts=options) SERVER.start()
def test_init(self): server = TimblServer(timbl_opts=self.timbl_opts)