public void UpdateVmContent(CodeEvaluationDTO evaluation) { if (Content is CodeAnalysisWindowControl windowControl) { windowControl.ViewModel.UpdateContent(evaluation); } }
public void Evaluates_code_quality(CodeSubmissionDTO submission, CodeEvaluationDTO expectedEvaluation) { using var scope = _factory.Services.CreateScope(); var controller = new QualityAnalysisController(_factory.Services.GetRequiredService <IMapper>(), scope.ServiceProvider.GetRequiredService <ICodeQualityAnalyzer>()); var evaluation = ((OkObjectResult)controller.Evaluate(submission).Result).Value as CodeEvaluationDTO; var actualLOs = evaluation.LearningObjects.Select(lo => lo.Id); var expectedLOs = expectedEvaluation.LearningObjects.Select(lo => lo.Id); actualLOs.Count().ShouldBe(expectedLOs.Count()); actualLOs.All(expectedLOs.Contains).ShouldBeTrue(); var actualAffectedSnippets = evaluation.CodeSnippetIssueAdvice.Keys.ToList(); var expectedAffectedSnippets = expectedEvaluation.CodeSnippetIssueAdvice.Keys.ToList(); actualAffectedSnippets.Count().ShouldBe(expectedAffectedSnippets.Count()); actualAffectedSnippets.All(expectedAffectedSnippets.Contains).ShouldBeTrue(); }