Coverage for src/tests/modules/training/test_update_training_schedule.py: 100%
14 statements
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
1"""Module for testing the use case "Update Training Schema"."""
3from kwai_bc_training.coaches.coach_db_repository import CoachDbRepository
4from kwai_bc_training.teams.team_db_repository import TeamDbRepository
5from kwai_bc_training.trainings.training_schedule import TrainingScheduleEntity
6from kwai_bc_training.trainings.training_schedule_db_repository import (
7 TrainingScheduleDbRepository,
8)
9from kwai_bc_training.update_training_schedule import (
10 UpdateTrainingSchedule,
11 UpdateTrainingScheduleCommand,
12)
13from kwai_core.db.database import Database
14from kwai_core.domain.presenter import EntityPresenter
15from kwai_core.domain.value_objects.owner import Owner
18async def test_update_training_schedule(
19 database: Database,
20 make_training_schedule_in_db,
21 owner: Owner,
22):
23 """Test the use case "Update Training"."""
24 schema = await make_training_schedule_in_db()
25 command = UpdateTrainingScheduleCommand(
26 id=schema.id.value,
27 name=schema.name,
28 description=schema.description,
29 weekday=schema.weekday.value,
30 start_time="20:00",
31 end_time="21:00",
32 timezone="Europe/Brussels",
33 active=schema.active,
34 location=schema.location,
35 remark="This is an update test",
36 team_id=None,
37 )
38 presenter = EntityPresenter[TrainingScheduleEntity]()
39 await UpdateTrainingSchedule(
40 TrainingScheduleDbRepository(database),
41 TeamDbRepository(database),
42 CoachDbRepository(database),
43 owner,
44 presenter,
45 ).execute(command)
47 assert presenter.entity is not None, "There should be a training schedule"