Files
tuimble/tests/test_config.py
2026-02-24 14:13:18 +01:00

48 lines
1.2 KiB
Python

"""Tests for configuration module."""
from tuimble.config import AudioConfig, 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 == "toggle"
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 == "f4"
assert ptt.backend == "auto"
def test_audio_gain_defaults():
acfg = AudioConfig()
assert acfg.input_gain == 1.0
assert acfg.output_gain == 1.0
def test_audio_gain_custom():
acfg = AudioConfig(input_gain=0.5, output_gain=1.5)
assert acfg.input_gain == 0.5
assert acfg.output_gain == 1.5
def test_server_cert_defaults():
srv = ServerConfig()
assert srv.certfile == ""
assert srv.keyfile == ""
def test_server_cert_custom():
srv = ServerConfig(certfile="/path/cert.pem", keyfile="/path/key.pem")
assert srv.certfile == "/path/cert.pem"
assert srv.keyfile == "/path/key.pem"