public void AnswerBlankTest()
        {
            // Arrange
            var controller = new ReviewController(mockRepository.Object);
            controller.ControllerContext = ctrlContext.Object;
            int id = 1, page = 0;
            var result = controller.Index(page, "Blank") as ViewResult;
            var viewModel = result.Model as ReviewViewModel;
            viewModel.QuestionedAt = DateTime.Now;
            viewModel.MyAnswer = "w";
            viewModel.Blank = "_1";
            viewModel.BlankAnswer = 'w';

            // Act
            var resultGet = controller.Answer(id, viewModel) as ViewResult;
            var card = viewModel.ViewCard as Card;
            var evaluation = viewModel.IsPerfect ? "Perfect" : "Almost";

            var resultPost = controller.Answer(id, page, evaluation, viewModel.ReviewMode) as RedirectToRouteResult;
            mockRepository.Verify(m => m.SaveCard(card));

            // Assert
            Assert.IsNotNull(resultGet);
            Assert.AreEqual("Perfect", evaluation);
            Assert.IsNotNull(resultPost);
            Assert.AreEqual("Index", resultPost.RouteValues["action"]);
        }
        public void AnswerTest()
        {
            // Arrange
            var controller = new ReviewController(mockRepository.Object);
            controller.ControllerContext = ctrlContext.Object;
            int id = 1, page = 0;

            var result = controller.Index(page) as ViewResult;
            var viewModel = result.Model as ReviewViewModel;

            // Act
            var resultGet = controller.Answer(id, viewModel) as ViewResult;
            viewModel = resultGet.Model as ReviewViewModel;
            var card = viewModel.ViewCard;

            var resultPost = controller.Answer(id, page, "Perfect", viewModel.ReviewMode) as RedirectToRouteResult;
            mockRepository.Verify(m => m.SaveCard(card));

            // Assert
            Assert.IsNotNull(resultGet);
            Assert.AreEqual("w1", card.Question);
            Assert.IsNotNull(resultPost);
            Assert.AreEqual("Index", resultPost.RouteValues["action"]);
        }