diff --git a/synmark/__init__.py b/synmark/__init__.py index 5cc8ed28ee..570eb818d9 100644 --- a/synmark/__init__.py +++ b/synmark/__init__.py @@ -21,15 +21,17 @@ from twisted.internet.main import installReactor from synapse.config.homeserver import HomeServerConfig from synapse.util import Clock -from tests.utils import default_config, setup_test_homeserver, setupdb - - -def setup_database(): - setupdb() +from tests.utils import default_config, setup_test_homeserver async def make_homeserver(reactor, config=None): + """ + Make a Homeserver suitable for running benchmarks against. + Args: + reactor: A Twisted reactor to run under. + config: A HomeServerConfig to use, or None. + """ cleanup_tasks = [] clock = Clock(reactor) @@ -58,7 +60,8 @@ async def make_homeserver(reactor, config=None): def make_reactor(): """ - Make an install a Twisted reactor. + Instantiate and install a Twisted reactor suitable for testing (i.e. not the + default global one). """ reactor = epollreactor.EPollReactor() diff --git a/synmark/__main__.py b/synmark/__main__.py index 8a8fbdf6c7..ac59befbd4 100644 --- a/synmark/__main__.py +++ b/synmark/__main__.py @@ -18,17 +18,19 @@ from contextlib import redirect_stderr from io import StringIO import pyperf -from synmark import make_reactor, setup_database +from synmark import make_reactor from synmark.suites import SUITES from twisted.internet.defer import ensureDeferred from twisted.logger import globalLogBeginner, textFileLogObserver from twisted.python.failure import Failure +from tests.utils import setupdb + def make_test(main): """ - Take main, the test function, and wrap it in a reactor start and stop. + Take a benchmark function and wrap it in a reactor start and stop. """ def _main(loops): @@ -75,7 +77,7 @@ if __name__ == "__main__": globalLogBeginner.beginLoggingTo( [textFileLogObserver(sys.__stdout__)], redirectStandardIO=False ) - setup_database() + setupdb() for suite, loops in SUITES: if loops: diff --git a/synmark/suites/logging.py b/synmark/suites/logging.py index 26b78e4569..d8e4c7d58f 100644 --- a/synmark/suites/logging.py +++ b/synmark/suites/logging.py @@ -47,7 +47,9 @@ class LineCounter(LineOnlyReceiver): async def main(reactor, loops): - + """ + Benchmark how long it takes to send `loops` messages. + """ servers = [] def protocol():