diff --git a/cmd/omegaup-grader/frontend_handler.go b/cmd/omegaup-grader/frontend_handler.go index 3e1dba5..e613fb8 100644 --- a/cmd/omegaup-grader/frontend_handler.go +++ b/cmd/omegaup-grader/frontend_handler.go @@ -277,9 +277,11 @@ func broadcastRun( } score := base.RationalToFloat(run.Result.Score) contestScore := base.RationalToFloat(run.Result.ContestScore) + verdict := run.Result.Verdict if run.ScoreMode == "all_or_nothing" && score != 1 { score = 0 contestScore = 0 + verdict = "WA" } msg := runFinishedMessage{ Message: "/run/update/", @@ -293,7 +295,7 @@ func broadcastRun( Score: score, ContestScore: contestScore, Status: "ready", - Verdict: run.Result.Verdict, + Verdict: verdict, Language: run.Run.Language, Time: -1, SubmitDelay: -1, diff --git a/cmd/omegaup-grader/frontend_handler_test.go b/cmd/omegaup-grader/frontend_handler_test.go index 88da0a8..eafa1a2 100644 --- a/cmd/omegaup-grader/frontend_handler_test.go +++ b/cmd/omegaup-grader/frontend_handler_test.go @@ -383,7 +383,7 @@ func TestBroadcastRun(t *testing.T) { }, { scoreMode: "all_or_nothing", - verdict: "PA", + verdict: "WA", score: big.NewRat(1, 2), expectedScore: 0., scoreByGroup: map[string]any{