File size: 905 Bytes
829be0a 85b2e31 829be0a 0f24486 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import importlib
import pytest
from server.models.base import is_valid_adapter
from server.schemas import ParamSpec
ADAPTER_MODULES = [
"server.models.chatterbox_en",
"server.models.chatterbox_turbo",
"server.models.chatterbox_mtl",
]
@pytest.mark.parametrize("module_name", ADAPTER_MODULES)
def test_adapter_class_attributes_valid(module_name):
mod = importlib.import_module(module_name)
cls = getattr(mod, "Adapter")
assert is_valid_adapter(cls)
assert cls.id
for p in cls.params:
assert isinstance(p, ParamSpec)
@pytest.mark.parametrize("module_name", ADAPTER_MODULES)
def test_adapter_param_groups_are_valid(module_name):
mod = importlib.import_module(module_name)
cls = getattr(mod, "Adapter")
for p in cls.params:
assert p.group in {"basic", "advanced"}, (
f"{cls.id}.{p.name} has invalid group: {p.group!r}"
)
|