Coverage for bc/kwai-bc-identity/src/kwai_bc_identity/tokens/user_log_db_repository.py: 100%

10 statements  

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

1"""Module that defines a User Log repository for a database.""" 

2 

3from kwai_core.db.database import Database 

4 

5from kwai_bc_identity.tokens.token_tables import UserLogRow 

6from kwai_bc_identity.tokens.user_log import UserLogEntity, UserLogIdentifier 

7from kwai_bc_identity.tokens.user_log_repository import UserLogRepository 

8 

9 

10class UserLogDbRepository(UserLogRepository): 

11 """Class that represents a User Log repository for a database.""" 

12 

13 def __init__(self, database: Database): 

14 self._db = database 

15 

16 async def create(self, user_log: UserLogEntity) -> UserLogEntity: 

17 new_id = await self._db.insert( 

18 UserLogRow.__table_name__, UserLogRow.persist(user_log) 

19 ) 

20 return user_log.set_id(UserLogIdentifier(new_id))