Source code for betty.test_utils.serve

"""
Test utilities for :py:mod:`betty.serve`.
"""

from typing import Any

from typing_extensions import override

from betty.locale.localizer import DEFAULT_LOCALIZER
from betty.serve import Server, ProjectServer


[docs] class NoOpServer(Server): """ A server that does nothing. """
[docs] def __init__(self, *_: Any, **__: Any): Server.__init__(self, DEFAULT_LOCALIZER)
@override @property def public_url(self) -> str: return "https://example.com"
[docs] @override async def start(self) -> None: pass
[docs] @override async def stop(self) -> None: pass
[docs] @override async def show(self) -> None: pass
[docs] class NoOpProjectServer(NoOpServer, ProjectServer): """ A project server that does nothing. """ pass