package judger import ( "github.com/Rabbit-OJ/Rabbit-OJ-Judger/compare" JudgerModels "github.com/Rabbit-OJ/Rabbit-OJ-Judger/models" ) const ( StatusOK = "OK" ) func JudgeOneCase(testResult *JudgerModels.TestResult, stdout, rightStdout, compMode string) *JudgerModels.JudgeResult { result := &JudgerModels.JudgeResult{} if testResult.Status != StatusOK { result.Status = testResult.Status } else { isAC := false if compMode == "STDIN_F" { isAC, _ = compare.ModeStdinFloat64(stdout, rightStdout) } else if compMode == "STDIN_S" { isAC, _ = compare.ModeStdinString(stdout, rightStdout) } else { isAC = compare.ModeCMP(stdout, rightStdout) } if isAC { result.Status = "AC" } else { result.Status = "WA" } } result.TimeUsed, result.SpaceUsed = testResult.TimeUsed, testResult.SpaceUsed return result }