from __future__ import annotations from teamlandkarte_mcp.database.schema_verifier import verify_required_columns class StubDB: def __init__(self, mapping: dict[str, list[str]]): self._mapping = mapping def get_table_columns(self, table: str) -> list[str]: return self._mapping.get(table, []) def test_verify_required_columns_ok() -> None: db = StubDB({"t": ["id", "name"]}) issues = verify_required_columns(db=db, expected={"t": {"id", "name"}}) assert issues == [] def test_verify_required_columns_missing() -> None: db = StubDB({"t": ["id"]}) issues = verify_required_columns(db=db, expected={"t": {"id", "name"}}) assert len(issues) == 1 assert issues[0].table == "t" assert "missing columns" in issues[0].message