vban-cmd-python/tests/test_errors.py

38 lines
1.1 KiB
Python
Raw Normal View History

import re
2023-08-07 16:31:19 +01:00
import pytest
import vban_cmd
from tests import data, vban
class TestErrors:
__test__ = True
def test_it_tests_an_unknown_kind(self):
with pytest.raises(
vban_cmd.error.VBANCMDError,
match=f"Unknown Voicemeeter kind 'unknown_kind'",
):
vban_cmd.api("unknown_kind")
def test_it_tests_an_unknown_config_name(self):
EXPECTED_MSG = "\n".join(
(
f"No config with name 'unknown' is loaded into memory",
f"Known configs: {list(vban.configs.keys())}",
)
2023-08-07 16:31:19 +01:00
)
with pytest.raises(vban_cmd.error.VBANCMDError, match=re.escape(EXPECTED_MSG)):
2023-08-07 16:31:19 +01:00
vban.apply_config("unknown")
def test_it_tests_an_invalid_config_key(self):
CONFIG = {
"strip-0": {"A1": True, "B1": True, "gain": -6.0},
"bus-0": {"mute": True, "eq": {"on": True}},
"unknown-0": {"state": True},
"vban-out-1": {"name": "streamname"},
}
with pytest.raises(ValueError, match="invalid config key 'unknown-0'"):
vban.apply(CONFIG)