Coverage for src/kwai/modules/identity/tokens/log_user_login_service.py: 100%

4 statements  

« prev     ^ index     » next       coverage.py v7.6.10, created at 2024-01-01 00:00 +0000

1"""Module that defines an interface for a service that logs a user login request.""" 

2 

3from abc import ABC, abstractmethod 

4 

5from kwai.modules.identity.tokens.refresh_token import RefreshTokenEntity 

6from kwai.modules.identity.users.user_account import UserAccountEntity 

7 

8 

9class LogUserLoginService(ABC): 

10 """Abstract interface for a service that logs a user login request.""" 

11 

12 @abstractmethod 

13 async def notify_failure( 

14 self, 

15 message: str = "", 

16 *, 

17 user_account: UserAccountEntity | None = None, 

18 refresh_token: RefreshTokenEntity | None = None, 

19 ) -> None: 

20 """Register a failed user login request.""" 

21 raise NotImplementedError() 

22 

23 @abstractmethod 

24 async def notify_success( 

25 self, 

26 *, 

27 user_account: UserAccountEntity | None = None, 

28 refresh_token: RefreshTokenEntity | None = None, 

29 ) -> None: 

30 """Register a successful user login request.""" 

31 raise NotImplementedError()