コード例 #1
0
        public void GetQuizTemplates_WhenMultipleTemplates_ReturnsOkResultWithTemplatesArray()
        {
            // Arrange
            var quizTemplatesStub = new[] {
                new QuizTemplate(),
                new QuizTemplate()
            };

            var mockQuizTemplateRepo = new Mock <IQuizTemplateRepository>();

            mockQuizTemplateRepo.Setup(repo => repo.Get(null, null))
            .Returns(value: quizTemplatesStub);

            var mockUow = new Mock <IUnitOfWork>();

            mockUow.Setup(uow => uow.QuizTemplateRepository)
            .Returns(mockQuizTemplateRepo.Object);

            var controller = new ScreenController(mockUow.Object);

            // Act
            var response = controller.GetQuizTemplates();

            // Assert
            var objectResult  = Assert.IsType <OkObjectResult>(response);
            var quizTemplates = Assert.IsAssignableFrom <IEnumerable <QuizTemplate> >(objectResult.Value);

            Assert.NotNull(quizTemplates);
            Assert.Equal(2, quizTemplates.Count());
        }