Coverage for src/app/controllers/get_support_messages_controller.py: 55%
11 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 dto.support_message_dto import SupportMessageDTO
2from usecases.get_support_messages_useCase import GetSupportMessagesUseCase
5class GetSupportMessagesController:
6 """
7 Controller for retrieving support messages from the database.
8 """
10 def __init__(self, get_support_messages_usecase: GetSupportMessagesUseCase):
11 self.get_support_messages_usecase = get_support_messages_usecase
13 def get_support_messages(self) -> list[SupportMessageDTO]:
14 """
15 Retrieve all support messages from the database.
17 Returns:
18 list[SupportMessageDTO]: A list of data transfer objects containing support message details.
19 """
20 try:
21 result_models = self.get_support_messages_usecase.get_support_messages()
23 return [
24 SupportMessageDTO(
25 id=model.get_id(),
26 user_id=model.get_user_id(),
27 user_email=model.get_user_email(),
28 description=model.get_description(),
29 status=model.get_status(),
30 subject=model.get_subject(),
31 created_at=model.get_created_at()
32 )
33 for model in result_models
34 ]
36 except Exception as e:
37 raise e