Exemplo n.º 1
0
        private static void ProcessResults(Submission submission, TextReader outstream)
        {
            string output = outstream.ReadToEnd();
            var    sb = new StringBuilder();
            int    correct = 0, incorrect = 0;

            foreach (string line in output.Split("\n"))
            {
                if (line.StartsWith("Correct"))
                {
                    correct++;
                    sb.AppendLine(MakeFeedbackLine(line, true));
                }
                else if (line.StartsWith("Con error"))
                {
                    incorrect++;
                    sb.AppendLine(MakeFeedbackLine(line, false));
                }
            }

            string trimmed = sb.ToString();
            float  grade   = MathF.Truncate(1000f * correct / AutoGrader.Config.TotalTests) / 10f;

            IncrementGradeCount(grade);
            submission.GiveFeedback(correct, incorrect, trimmed);
        }