Coverage for apps/inners/use_cases/authentications/logout_authentication.py: 89%

9 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2024-09-22 19:03 +0000

1from starlette.datastructures import State 

2 

3from apps.inners.models.daos.session import Session 

4from apps.inners.use_cases.managements.session_management import SessionManagement 

5 

6 

7class LogoutAuthentication: 

8 def __init__( 

9 self, 

10 session_management: SessionManagement 

11 ): 

12 self.session_management = session_management 

13 

14 async def logout(self, state: State, access_token: str): 

15 found_session: Session = await self.session_management.find_one_by_access_token( 

16 state=state, 

17 access_token=access_token 

18 ) 

19 await self.session_management.delete_one_by_id( 

20 state=state, 

21 id=found_session.id 

22 )