add dev-mode

This commit is contained in:
Abel Luck 2026-03-30 15:36:12 +02:00
parent 0803617e62
commit 31e1da937f
7 changed files with 146 additions and 51 deletions

View file

@ -31,6 +31,20 @@ def test_parse_args_uses_republisher_host_and_port_env_vars(monkeypatch) -> None
assert args.port == "9090"
def test_parse_args_supports_dev_mode_flag() -> None:
command, args = parse_args(["serve", "--dev-mode"])
assert command == "serve"
assert args.dev_mode is True
def test_parse_args_defaults_to_dev_mode_when_no_args() -> None:
command, args = parse_args([])
assert command == "serve"
assert args.dev_mode is True
def test_entrypoint_rejects_invalid_republisher_port(monkeypatch) -> None:
monkeypatch.setenv("REPUBLISHER_PORT", "not-a-number")
stream = io.StringIO()
@ -49,3 +63,25 @@ def test_entrypoint_rejects_invalid_republisher_port(monkeypatch) -> None:
assert exit_code == 2
assert "Invalid REPUBLISHER_PORT/--port value" in stream.getvalue()
def test_entrypoint_passes_dev_mode_to_create_app(monkeypatch) -> None:
recorded: dict[str, object] = {}
class StubApp:
def run(self, *, host: str, port: int) -> None:
recorded["host"] = host
recorded["port"] = port
def fake_create_app(*, dev_mode: bool) -> StubApp:
recorded["dev_mode"] = dev_mode
return StubApp()
monkeypatch.setattr("repub.entrypoint.create_app", fake_create_app)
exit_code = entrypoint(
["serve", "--dev-mode", "--host", "0.0.0.0", "--port", "9090"]
)
assert exit_code == 0
assert recorded == {"dev_mode": True, "host": "0.0.0.0", "port": 9090}