Coverage for src/app/controllers/save_support_message_controller.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.7.0, created at 2025-04-03 00:42 +0200

1from dto.support_message_dto import SupportMessageDTO 

2from models.support_message_model import SupportMessageModel 

3from usecases.save_support_message_useCase import SaveSupportMessageUseCase 

4 

5class SaveSupportMessageController: 

6 """ 

7 Controller for saving a support message to the database. 

8 """ 

9 

10 def __init__(self, save_support_message_usecase: SaveSupportMessageUseCase): 

11 self.save_support_message_usecase = save_support_message_usecase 

12 

13 def save_support_message(self, message_dto: SupportMessageDTO): 

14 """ 

15 Save a support message to the database. 

16 

17 Args: 

18 message (SupportMessageDTO): The data transfer object containing support message details. 

19 Returns: 

20 int: The ID of the saved support message.  

21 """ 

22 try: 

23 

24 message_model = SupportMessageModel( 

25 id=message_dto.get_id(), 

26 user_id=message_dto.get_user_id(), 

27 description=message_dto.get_description(), 

28 status=message_dto.get_status(), 

29 subject=message_dto.get_subject(), 

30 created_at=message_dto.get_created_at() 

31 ) 

32 

33 return self.save_support_message_usecase.save_support_message(message_model) 

34 

35 except Exception as e: 

36 raise e