Files

30 lines
835 B
Python

from __future__ import annotations
from datetime import UTC, datetime
from uuid import uuid4
from schemas.domain.chat_message import AgentChatMessage
def test_agent_chat_message_schema_matches_messages_columns() -> None:
now = datetime.now(UTC)
payload = {
"id": uuid4(),
"seq": 3,
"role": "assistant",
"content": "hello",
"metadata": {"run_id": "run-1"},
"timestamp": now,
}
message = AgentChatMessage.model_validate(payload)
assert message.seq == 3
assert message.role == "assistant"
assert message.content == "hello"
assert message.metadata is not None
if isinstance(message.metadata, dict):
assert message.metadata == {"run_id": "run-1"}
else:
assert message.metadata.model_dump(exclude_none=True) == {"run_id": "run-1"}