File size: 1,027 Bytes
eeff6a0 | 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 | import pytest
from sqlalchemy import create_engine
from sqlalchemy.orm import Session
from app.core.database import Base
from app.models.department import Department
from app.services.routing_service import match_department
@pytest.mark.parametrize("include_finance", [False, True])
def test_unmatched_query_without_admin_stays_unassigned(include_finance):
engine = create_engine("sqlite+pysqlite:///:memory:")
try:
Base.metadata.create_all(engine)
with Session(engine) as db:
if include_finance:
db.add(Department(
name="Finance",
code="FIN",
keywords="tuition, fee, refund",
query="Sir i want refund my fee",
))
db.commit()
result = match_department(
db,
"I have updated the syllabus. Please review the course outline.",
)
assert result == (None, 0)
finally:
engine.dispose()
|