public void EvaluateQuizSuccess() { var options = new List <QuestionAnswer>(); options.Add(new QuestionAnswer { QuestionId = 1, IsCorrect = false, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 1, IsCorrect = true, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 2, IsCorrect = false, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 2, IsCorrect = true, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 2, IsCorrect = true, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 2, IsCorrect = false, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 3, IsCorrect = false, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 3, IsCorrect = false, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 3, IsCorrect = true, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 4, IsCorrect = false, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 4, IsCorrect = true, IsMarked = false }); options.Add(new QuestionAnswer { QuestionId = 5, IsCorrect = true, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 5, IsCorrect = true, IsMarked = true }); options.Add(new QuestionAnswer { QuestionId = 5, IsCorrect = false, IsMarked = true }); var questions = new List <Question>(); questions.Add(new Question { Id = 1, Level = 4 }); questions.Add(new Question { Id = 2, Level = 2 }); questions.Add(new Question { Id = 3, Level = 5 }); questions.Add(new Question { Id = 4, Level = 2 }); questions.Add(new Question { Id = 5, Level = 5 }); var result = QuizAttemptManager.EvaluateQuiz(questions, options); Assert.AreEqual(2, result.CorrectCount); Assert.AreEqual(2, result.IncorrectCount); Assert.AreEqual(38.89M, result.Score); }