Coverage for src/app/controllers/registration_controller.py: 58%

12 statements  

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

1from usecases.registration_useCase import RegistrationUseCase 

2from dto.user_dto import UserDTO 

3from models.user_model import UserModel 

4 

5class RegistrationController: 

6 

7 def __init__(self, registration_use_case: RegistrationUseCase): 

8 self.registration_use_case = registration_use_case 

9 

10 def register(self, user_dto : UserDTO) -> bool: 

11 """ 

12 Register a new user. 

13  

14 Args: 

15 user_dto (UserDTO): The user data transfer object. 

16  

17 Returns: 

18 bool: True if the user was registered successfully, False otherwise. 

19 """ 

20 try: 

21 

22 user_model = UserModel( 

23 username=user_dto.get_username(), 

24 password=user_dto.get_password(), 

25 email=user_dto.get_email(), 

26 phone=user_dto.get_phone(), 

27 first_name=user_dto.get_first_name(), 

28 last_name=user_dto.get_last_name(), 

29 is_admin=user_dto.get_is_admin() 

30 ) 

31 

32 return self.registration_use_case.register(user_model) 

33 

34 except Exception as e: 

35 raise e