taolib.testing.task_queue.models#

任务队列模型。

导出所有 Pydantic 模型和枚举。

Submodules#

Classes#

TaskPriority

任务优先级。

TaskStatus

任务状态。

TaskCreate

创建任务的输入模型。

TaskDocument

任务的 MongoDB 文档模型。

TaskResponse

任务的 API 响应模型。

TaskUpdate

更新任务的输入模型(所有字段可选)。

Package Contents#

class taolib.testing.task_queue.models.TaskPriority#

Bases: enum.StrEnum

任务优先级。

HIGH = 'high'#
NORMAL = 'normal'#
LOW = 'low'#
class taolib.testing.task_queue.models.TaskStatus#

Bases: enum.StrEnum

任务状态。

PENDING = 'pending'#
RUNNING = 'running'#
COMPLETED = 'completed'#
FAILED = 'failed'#
RETRYING = 'retrying'#
CANCELLED = 'cancelled'#
class taolib.testing.task_queue.models.TaskCreate#

Bases: TaskBase

创建任务的输入模型。

class taolib.testing.task_queue.models.TaskDocument#

Bases: TaskBase

任务的 MongoDB 文档模型。

id: str#
status: taolib.testing.task_queue.models.enums.TaskStatus#
retry_count: int#
result: dict[str, Any] | None = None#
error_message: str | None = None#
error_traceback: str | None = None#
created_at: datetime.datetime#
started_at: datetime.datetime | None = None#
completed_at: datetime.datetime | None = None#
next_retry_at: datetime.datetime | None = None#
model_config#
to_response() TaskResponse#

转换为 API 响应。

class taolib.testing.task_queue.models.TaskResponse#

Bases: TaskBase

任务的 API 响应模型。

id: str#
status: taolib.testing.task_queue.models.enums.TaskStatus#
retry_count: int#
result: dict[str, Any] | None = None#
error_message: str | None = None#
error_traceback: str | None = None#
created_at: datetime.datetime#
started_at: datetime.datetime | None = None#
completed_at: datetime.datetime | None = None#
next_retry_at: datetime.datetime | None = None#
model_config#
class taolib.testing.task_queue.models.TaskUpdate#

Bases: pydantic.BaseModel

更新任务的输入模型(所有字段可选)。

status: taolib.testing.task_queue.models.enums.TaskStatus | None = None#
retry_count: int | None = None#
result: dict[str, Any] | None = None#
error_message: str | None = None#
error_traceback: str | None = None#
started_at: datetime.datetime | None = None#
completed_at: datetime.datetime | None = None#
next_retry_at: datetime.datetime | None = None#