Files
odysseus/tests/test_search_query_entities_nonstring.py

16 lines
633 B
Python

from services.search.query import _extract_entities
def test_extract_entities_handles_non_string_query():
# _detect_question_type already guards non-strings, but the function then
# runs re.findall over `query` directly, which raises TypeError on a
# non-string. A non-str query should yield no entities.
assert _extract_entities(None) == {"names": [], "dates": []}
assert _extract_entities(123) == {"names": [], "dates": []}
def test_extract_entities_still_finds_names_and_years():
out = _extract_entities("What did Alice do in 2024")
assert "Alice" in out["names"]
assert "2024" in out["dates"]