コード例 #1
0
        private ChallengeEvaluation CheckSyntaxErrors(IReadOnlyCollection <string> syntaxErrors)
        {
            if (syntaxErrors.Count == 0)
            {
                return(null);
            }

            var evaluation = new ChallengeEvaluation(Id);

            evaluation.ApplicableHints.AddHint("SYNTAX ERRORS", new ChallengeHint(1, string.Join("\n", syntaxErrors)));
            return(evaluation);
        }
コード例 #2
0
        private ChallengeEvaluation StrategyEvaluation(CaDETProject solution)
        {
            var evaluation = new ChallengeEvaluation(Id);

            foreach (var strategy in FulfillmentStrategies)
            {
                var result = strategy.EvaluateSubmission(solution.Classes);
                evaluation.ApplicableHints.MergeHints(result);
            }

            if (evaluation.ApplicableHints.IsEmpty())
            {
                evaluation.ChallengeCompleted = true;
                evaluation.ApplicableHints.AddAllHints(GetAllChallengeHints());
            }

            return(evaluation);
        }