32 lines
925 B
Python
32 lines
925 B
Python
import asyncio
|
|
import uuid
|
|
from unittest.mock import AsyncMock, MagicMock, patch
|
|
|
|
from api.v1.ppt.endpoints.chat import delete_chat_conversation
|
|
|
|
|
|
def test_delete_chat_conversation_deletes_sql_thread_and_commits():
|
|
presentation_id = uuid.uuid4()
|
|
conversation_id = uuid.uuid4()
|
|
sql_session = MagicMock()
|
|
sql_session.commit = AsyncMock()
|
|
|
|
with patch(
|
|
"api.v1.ppt.endpoints.chat.sql_chat_history.delete_conversation",
|
|
new=AsyncMock(),
|
|
) as delete_conversation:
|
|
asyncio.run(
|
|
delete_chat_conversation(
|
|
presentation_id=presentation_id,
|
|
conversation_id=conversation_id,
|
|
sql_session=sql_session,
|
|
)
|
|
)
|
|
|
|
delete_conversation.assert_awaited_once_with(
|
|
sql_session,
|
|
presentation_id=presentation_id,
|
|
conversation_id=conversation_id,
|
|
)
|
|
sql_session.commit.assert_awaited_once()
|