Coverage for src/app/controllers/save_conversation_title_controller.py: 58%
12 statements
« prev ^ index » next coverage.py v7.7.0, created at 2025-04-03 00:51 +0200
« prev ^ index » next coverage.py v7.7.0, created at 2025-04-03 00:51 +0200
1from usecases.save_conversation_title_useCase import SaveConversationTitleUseCase
2from dto.conversation_dto import ConversationDTO
3from models.conversation_model import ConversationModel
5class SaveConversationTitleController:
7 def __init__(self, save_conversation_title_usecase: SaveConversationTitleUseCase):
8 self.save_conversation_title_usecase = save_conversation_title_usecase
10 def save_conversation_title(self, conversation_dto: ConversationDTO) -> int:
11 """
12 Save a conversation title to the database.
13 Args:
14 conversation (ConversationDTO): The data transfer object containing conversation details.
15 Returns:
16 int: The ID of the saved conversation.
17 """
18 try:
19 conversation_model = ConversationModel(
20 id=conversation_dto.get_id(),
21 title=conversation_dto.get_title(),
22 user_id=conversation_dto.get_user_id()
23 )
25 return self.save_conversation_title_usecase.save_conversation_title(conversation_model)
27 except Exception as e:
28 raise e