@@ -146,11 +146,12 @@ func TestEvaluationComponent_CreateClawEvaluation_AutoBuiltinJudgeAPIKey(t *test
146146 r .Model == "glm-5.1" &&
147147 r .JudgeApiKey == "gk-builtin-key" &&
148148 r .JudgeBaseURL == "http://aigateway.test/v1"
149- })).Return (& types.ArgoWorkFlowRes {ID : 2 }, nil )
149+ })).Return (& types.ArgoWorkFlowRes {ID : 4 , TaskId : "task-123" }, nil )
150150
151151 resp , err := c .CreateEvaluation (ctx , req )
152152 require .NoError (t , err )
153- require .Equal (t , int64 (2 ), resp .ID )
153+ require .Equal (t , int64 (4 ), resp .ID )
154+ require .Equal (t , "task-123" , resp .TaskId )
154155}
155156
156157func TestEvaluationComponent_CreateClawEvaluation_AutoJudgeAPIKeyFallback (t * testing.T ) {
@@ -317,6 +318,42 @@ func TestEvaluationComponent_GetClawEvaluation(t *testing.T) {
317318 require .ErrorIs (t , err , errorx .ErrForbidden )
318319}
319320
321+ func TestEvaluationComponent_GetClawEvaluationByTaskID (t * testing.T ) {
322+ ctx := context .Background ()
323+ c , _ , _ , mockWorkflow := newTestEvaluationComponentForClaw (t )
324+
325+ mockWorkflow .EXPECT ().FindByTaskID (ctx , "task-1" ).Return (& database.ArgoWorkflow {
326+ ID : 123 ,
327+ RepoIds : []string {"glm-5.1" },
328+ TaskType : types .TaskTypeClawEval ,
329+ Username : "user1" ,
330+ TaskName : "claw-job" ,
331+ TaskId : "task-1" ,
332+ Status : "Succeeded" ,
333+ }, nil )
334+
335+ res , err := c .GetEvaluation (ctx , types.EvaluationGetReq {TaskID : "task-1" , Username : "user1" })
336+ require .NoError (t , err )
337+ require .Equal (t , int64 (123 ), res .ID )
338+ require .Equal (t , "task-1" , res .TaskId )
339+ require .Equal (t , types .TaskTypeClawEval , res .TaskType )
340+ }
341+
342+ func TestEvaluationComponent_GetEvaluationByTaskIDRejectsNonEvaluation (t * testing.T ) {
343+ ctx := context .Background ()
344+ c , _ , _ , mockWorkflow := newTestEvaluationComponentForClaw (t )
345+
346+ mockWorkflow .EXPECT ().FindByTaskID (ctx , "finetune-task" ).Return (& database.ArgoWorkflow {
347+ ID : 123 ,
348+ TaskType : types .TaskTypeFinetune ,
349+ Username : "user1" ,
350+ TaskId : "finetune-task" ,
351+ }, nil )
352+
353+ _ , err := c .GetEvaluation (ctx , types.EvaluationGetReq {TaskID : "finetune-task" , Username : "user1" })
354+ require .ErrorIs (t , err , errorx .ErrForbidden )
355+ }
356+
320357func TestEvaluationComponent_GetClawEvaluationSummary (t * testing.T ) {
321358 summaryServer := httptest .NewServer (http .HandlerFunc (func (w http.ResponseWriter , r * http.Request ) {
322359 w .Header ().Set ("Content-Type" , "application/json" )
0 commit comments