Example #1
0
        public async Task Handle(Solution solution)
        {
            Current = solution;
            Status  = ExecuteWorkerStatus.Build;
            var success = await builder.BuildSolution(solution);

            if (success)
            {
                var tasksForExercise = await getTests(solution.ExerciseId);

                Status = ExecuteWorkerStatus.Checking;
                await runner.RunAndCheckSolution(solution.Id, tasksForExercise);
            }
            Current = null;
            Status  = ExecuteWorkerStatus.Wait;
        }