feat: scaffold tuimble TUI mumble client

Core modules: TUI app (textual), mumble protocol client,
audio pipeline (sounddevice + opus), push-to-talk with
kitty protocol / evdev / toggle backends. Config via TOML.
This commit is contained in:
Username
2026-02-24 11:44:06 +01:00
commit 836018d146
22 changed files with 1040 additions and 0 deletions

23
tests/test_config.py Normal file
View File

@@ -0,0 +1,23 @@
"""Tests for configuration module."""
from tuimble.config import Config, PttConfig, ServerConfig
def test_default_config():
cfg = Config()
assert cfg.server.host == "localhost"
assert cfg.server.port == 64738
assert cfg.audio.sample_rate == 48000
assert cfg.ptt.mode == "hold"
def test_server_config():
srv = ServerConfig(host="mumble.example.com", port=12345)
assert srv.host == "mumble.example.com"
assert srv.port == 12345
def test_ptt_config_defaults():
ptt = PttConfig()
assert ptt.key == "space"
assert ptt.backend == "auto"