from contextlib import closing, ExitStack
from http.server import HTTPServer, SimpleHTTPRequestHandler
from importlib import import_module
-from logging import DEBUG, StreamHandler
+from logging import DEBUG, StreamHandler, WARNING
from multiprocessing import Process
from os import kill, unlink
from signal import SIGINT
_, self.tmpfilebase = mkstemp()
self.conf = ConfigParser()
self.conf["common"] = {
- "protocols": "zx303proto",
+ "protocols": "zx303proto,beesure",
}
self.conf["collector"] = {
"port": str(freeports[0]),
if verbose:
cls.log.addHandler(StreamHandler(stderr))
cls.log.setLevel(DEBUG)
+ else:
+ cls.log.setLevel(WARNING)
p = Process(target=cls.runserver, args=(self.conf,), kwargs=kwargs)
p.start()
self.children.append((srvname, p))
p.start()
self.children.append(("httpd", p))
sleep(1)
+ for srvname, p in self.children:
+ self.assertTrue(
+ p.is_alive(),
+ f"{srvname} did not start, exit code {p.exitcode}",
+ )
def tearDown(self) -> None:
for srvname, p in self.children:
if p.pid is not None:
kill(p.pid, SIGINT)
p.join()
- self.assertEqual(
- p.exitcode,
- 0,
- f"{srvname} terminated with return code {p.exitcode}",
- )
for sfx in (
"",
".pub",
unlink(self.tmpfilebase + sfx)
except OSError:
pass
+ for srvname, p in self.children:
+ self.assertEqual(
+ p.exitcode,
+ 0,
+ f"{srvname} terminated with exit code {p.exitcode}",
+ )
class Fuzz(TestWithServers):