示例#1
0
        public async Task Index_ReturnsAllCategories()
        {
            var categoryModel = new CategoryConciseViewModel()
            {
                Id = 1, Name = "First", CategoryPicUrl = "https://example.com"
            };
            bool methodCalled = false;
            //Arrange

            var mockRepository = new Mock <IModeratorCategoryService>();

            mockRepository
            .Setup(service => service.GetCategoriesAsync())
            .ReturnsAsync(new[] { categoryModel })
            .Callback(() => methodCalled = true);

            var controller = new CategoriesController(mockRepository.Object);

            //Act
            var result = await controller.Index();

            //Assert
            Assert.IsInstanceOfType(result, typeof(ViewResult));
            var resultViewModel = result as ViewResult;

            Assert.IsNotNull(resultViewModel.Model);
            Assert.IsInstanceOfType(resultViewModel.Model, typeof(IEnumerable <CategoryConciseViewModel>));
            Assert.IsTrue(methodCalled);
        }
        public async Task Index_ReturnsAllCourses()
        {
            // Arrange
            var categoryModel = new CategoryConciseViewModel()
            {
                Id = 1, Name = "Business", Order = 1
            };
            bool methodCalled = false;

            var mockRepository = new Mock <IAdminCategoriesService>();

            mockRepository
            .Setup(service => service.GetCategoriesAsync())
            .ReturnsAsync(new[] { categoryModel })
            .Callback(() => methodCalled = true);

            var controller = new CategoriesController(mockRepository.Object);

            // Act
            var result = await controller.Index();

            // Assert
            Assert.IsInstanceOfType(result, typeof(ViewResult));
            var resultView = result as ViewResult;

            Assert.IsNotNull(resultView.Model);
            Assert.IsInstanceOfType(resultView.Model, typeof(IEnumerable <CategoryConciseViewModel>));
            Assert.IsTrue(methodCalled);
        }