Coverage for src/tests/modules/club/repositories/test_file_upload_db_repository.py: 100%

19 statements  

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

1"""Module for testing the file upload repository.""" 

2 

3import pytest 

4 

5from kwai_bc_club.domain.file_upload import FileUploadEntity 

6from kwai_bc_club.repositories.file_upload_db_repository import ( 

7 FileUploadDbRepository, 

8) 

9from kwai_bc_club.repositories.file_upload_repository import ( 

10 DuplicateMemberUploadedException, 

11) 

12from kwai_core.db.database import Database 

13from kwai_core.domain.value_objects.owner import Owner 

14 

15 

16pytestmark = pytest.mark.db 

17 

18 

19async def test_create(database: Database, owner: Owner): 

20 """Test the creation of a file upload entity.""" 

21 file_upload = FileUploadEntity( 

22 filename="test.csv", 

23 owner=owner, 

24 ) 

25 file_upload = await FileUploadDbRepository(database).create(file_upload) 

26 assert file_upload.id is not None 

27 

28 

29async def test_duplicate(database: Database, owner: Owner, make_member): 

30 """Test the creation of a file upload entity.""" 

31 file_upload = FileUploadEntity( 

32 filename="test.csv", 

33 owner=owner, 

34 ) 

35 repo = FileUploadDbRepository(database) 

36 file_upload = await repo.create(file_upload) 

37 member = make_member() 

38 with pytest.raises(DuplicateMemberUploadedException): 

39 await repo.save_member(file_upload, member) 

40 await repo.save_member(file_upload, member)