30 lines
869 B
Python
30 lines
869 B
Python
|
|
import pytest
|
|||
|
|
from routes.chat_helpers import needs_auto_name
|
|||
|
|
|
|||
|
|
|
|||
|
|
@pytest.mark.parametrize("name,expected", [
|
|||
|
|
# 24h format (the bug this PR fixes)
|
|||
|
|
("deepseek-v4-flash 14:05:33", True),
|
|||
|
|
("qwq 17:46:02", True),
|
|||
|
|
("gemma3 23:59:59", True),
|
|||
|
|
("claude-sonnet 4 0:00:00", True),
|
|||
|
|
|
|||
|
|
# 12h format (was already working)
|
|||
|
|
("deepseek-v4-flash 2:05:33 PM", True),
|
|||
|
|
("qwq 06:46:02 AM", True),
|
|||
|
|
("claude-sonnet-4 8:05:17 am", True),
|
|||
|
|
|
|||
|
|
# empty / default
|
|||
|
|
("", True),
|
|||
|
|
(" ", False),
|
|||
|
|
("Chat: something", True),
|
|||
|
|
|
|||
|
|
# custom titles – should NOT trigger auto-naming
|
|||
|
|
("custom title", False),
|
|||
|
|
("CW Decoder for STM32", False),
|
|||
|
|
("my chat about python", False),
|
|||
|
|
("Fix the login bug", False),
|
|||
|
|
])
|
|||
|
|
def test_needs_auto_name(name, expected):
|
|||
|
|
assert needs_auto_name(name) == expected, f"needs_auto_name({name!r}) should be {expected}"
|