Coverage for bc/kwai-bc-training/src/kwai_bc_training/trainings/training_schedule_query.py: 100%
5 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 that defines an interface for a training schedule query."""
3from abc import ABC, abstractmethod
4from typing import Self
6from kwai_core.domain.repository.query import Query
8from kwai_bc_training.trainings.training_schedule import (
9 TrainingScheduleIdentifier,
10)
13class TrainingScheduleQuery(Query, ABC):
14 """Interface for a training schedule query."""
16 @abstractmethod
17 def filter_by_id(self, id_: TrainingScheduleIdentifier) -> Self:
18 """Add a filter on the training schedule id.
20 Args:
21 id_: id of a training schedule
23 Returns:
24 TrainingScheduleQuery:
25 """
26 raise NotImplementedError
28 @abstractmethod
29 def filter_by_ids(self, *ids: TrainingScheduleIdentifier) -> Self:
30 """Add a filter on multiple training schedule identifiers.
32 Args:
33 ids: a variable list of training schedule identifiers
35 Returns:
36 TrainingScheduleQuery:
37 """
38 raise NotImplementedError