""" The QUIC MNP listener is off unless the operator turns it on. No shipping client speaks QUIC (browser and desktop use WebRTC; the hub-less `group://` sidecar is unbuilt), so a node that started it by default would only be exposing a UDP port. `daemon.py` gates `QuicChunkServer` on `self._config.node.quic_enabled`; these follow the value down the config path. """ import textwrap from pathlib import Path from meshbay_node.config import load_config def _cfg(tmp_path: Path, body: str): p = tmp_path / "node.toml" p.write_text(textwrap.dedent(body)) return load_config(p) def test_off_by_default(tmp_path): cfg = _cfg(tmp_path, """ [node] quic_port = 19010 """) assert cfg.node.quic_enabled is False def test_the_operator_turns_it_on(tmp_path): cfg = _cfg(tmp_path, """ [node] quic_enabled = true """) assert cfg.node.quic_enabled is True def test_the_environment_can_force_it_on(tmp_path, monkeypatch): monkeypatch.setenv("MESHBAY_QUIC_ENABLED", "1") cfg = _cfg(tmp_path, """ [node] quic_enabled = false """) assert cfg.node.quic_enabled is True def test_the_environment_can_force_it_off(tmp_path, monkeypatch): monkeypatch.setenv("MESHBAY_QUIC_ENABLED", "false") cfg = _cfg(tmp_path, """ [node] quic_enabled = true """) assert cfg.node.quic_enabled is False