Coverage for src/tests/modules/training/test_add_coach_to_training.py: 100%

12 statements  

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

1"""Module for testing the use case 'Add team to training'.""" 

2 

3from kwai_bc_training.add_coach_to_training import ( 

4 AddCoachToTraining, 

5 AddCoachToTrainingCommand, 

6) 

7from kwai_bc_training.coaches.coach_db_repository import CoachDbRepository 

8from kwai_bc_training.trainings.training_db_repository import TrainingDbRepository 

9from kwai_core.domain.presenter import EntityPresenter 

10 

11 

12async def test_add_coach_to_training( 

13 database, make_training_in_db, make_coach_in_db, owner 

14): 

15 """Test the use case 'Add coach to training'.""" 

16 training = await make_training_in_db() 

17 coach = await make_coach_in_db() 

18 

19 presenter = EntityPresenter() 

20 command = AddCoachToTrainingCommand( 

21 training_id=training.id.value, 

22 coach_id=coach.id.value, 

23 present=False, 

24 payed=False, 

25 head=False, 

26 remark="", 

27 ) 

28 await AddCoachToTraining( 

29 TrainingDbRepository(database), 

30 CoachDbRepository(database), 

31 owner, 

32 presenter, 

33 ).execute(command) 

34 

35 assert presenter.entity is not None, "There should be an entity present." 

36 assert len(presenter.entity.coaches) == 2, "There should be 2 coaches."