Files
i-tools/app/api/testcase-generator/task_status/[taskId]/route.ts
yfan 3d175d75af
Some checks failed
Build and Push Docker Image / build (push) Has been cancelled
Sync to CNB / sync (push) Has been cancelled
Delete old workflow runs / del_runs (push) Has been cancelled
Upstream Sync / Sync latest commits from upstream repo (push) Has been cancelled
first commit
2026-01-30 16:57:44 +08:00

38 lines
1.1 KiB
TypeScript

import { NextRequest } from "next/server";
import { getTask, getEstimatedTime } from "@/lib/testcase-backend";
export async function GET(
_req: NextRequest,
{ params }: { params: Promise<{ taskId: string }> }
) {
const { taskId } = await params;
if (!taskId) {
return Response.json({ error: "缺少 taskId" }, { status: 400 });
}
const task = getTask(taskId);
if (!task) {
return Response.json({ error: "任务未找到" }, { status: 404 });
}
const runningTime = Math.floor((Date.now() - task.createdAt.getTime()) / 1000);
const estimated_time = getEstimatedTime(task.serviceLevel, task.testCaseCount);
return Response.json({
task_id: task.id,
status: task.status,
progress: task.progress,
title: task.title,
english_name: task.englishName,
test_case_count: task.testCaseCount,
generated_cases: task.generatedCases ?? 0,
service_level: task.serviceLevel,
created_at: task.createdAt,
updated_at: task.updatedAt,
running_time: runningTime,
estimated_time,
error_message: task.errorMessage ?? undefined,
currentMessage: task.currentMessage ?? undefined,
});
}