public void Builds_personalized_node(int learnerId, KnowledgeNode node, NodeProgress expectedNodeProgress) { var result = _instructor.GatherLearningObjectsForLearner(learnerId, node.LearningObjectSummaries); result.ShouldBe(expectedNodeProgress.LearningObjects); }
private NodeProgress BuildNodeForLearner(KnowledgeNode node, int learnerId) { var nodeProgress = _progressRepository.GetNodeProgressForLearner(learnerId, node.Id) ?? new NodeProgress( 0, learnerId, node, NodeStatus.Unlocked, _instructor.GatherLearningObjectsForLearner(learnerId, node.LearningObjectSummaries) ); //TODO: Create learning session and save. _progressRepository.SaveNodeProgress(nodeProgress); return(nodeProgress); }
public CodeEvaluation EvaluateCode(CodeSubmission submission) { var issueReport = _smellDetectorService.AnalyzeCodeQuality(submission.SourceCode); if (issueReport.IssuesForCodeSnippet.Count == 0) { return(new CodeEvaluation()); } var qualityEvaluation = GatherLOSummaries(issueReport); var instructorLOs = _instructor.GatherLearningObjectsForLearner(submission.LearnerId, qualityEvaluation.GetLearningObjectSummaries()); qualityEvaluation.AddLearningObjects(instructorLOs); return(qualityEvaluation); }