예제 #1
0
        public void RenderTheRightPartialView()
        {
            //Arrange
            IEnumerable <FoodCategory> foodCategories = new List <FoodCategory>();
            var foodCategorieServiceMock = new Mock <IFoodCategoriesService>();

            foodCategorieServiceMock.Setup(x => x.GetAllFoodCategories()).Returns(foodCategories);
            var    mappingServiceMock  = new Mock <IMappingService>();
            var    foodCategoriesModel = new List <FoodCategoryViewModel>();
            var    gridPageSize        = 5;
            string name = "Tomato";

            foreach (var foodCategory in foodCategories)
            {
                mappingServiceMock.Setup(x => x.Map <FoodCategoryViewModel>(foodCategory)).Returns(It.IsAny <FoodCategoryViewModel>());
            }

            var controller = new FoodCategoriesController(foodCategorieServiceMock.Object, mappingServiceMock.Object);

            var searchModel = new SearchFoodCategoryViewModel();

            searchModel.FoodCategories = foodCategoriesModel;
            searchModel.PageSize       = gridPageSize;
            searchModel.TotalRecords   = foodCategoriesModel.Count();

            //Act & Assert
            controller.WithCallTo(x => x.Search(name)).ShouldRenderPartialView("_FoodCategoriesGridPartial");
        }
예제 #2
0
        public void RenderTheRightViewWithTheCorrectModel_SearchFoodCategoryViewModelAndNoModelErrors()
        {
            //Arrange
            IEnumerable <FoodCategory> foodCategories = new List <FoodCategory>();
            var foodCategorieServiceMock = new Mock <IFoodCategoriesService>();

            foodCategorieServiceMock.Setup(x => x.GetAllFoodCategories()).Returns(foodCategories);
            var mappingServiceMock  = new Mock <IMappingService>();
            var foodCategoriesModel = new List <FoodCategoryViewModel>();
            var gridPageSize        = 5;

            foreach (var foodCategory in foodCategories)
            {
                mappingServiceMock.Setup(x => x.Map <FoodCategoryViewModel>(foodCategory)).Returns(It.IsAny <FoodCategoryViewModel>());
            }

            var controller = new FoodCategoriesController(foodCategorieServiceMock.Object, mappingServiceMock.Object);

            var searchModel = new SearchFoodCategoryViewModel();

            searchModel.FoodCategories = foodCategoriesModel;
            searchModel.PageSize       = gridPageSize;
            searchModel.TotalRecords   = foodCategoriesModel.Count();


            //Act & Assert
            controller.WithCallTo(x => x.Index())
            .ShouldRenderView("Index")
            .WithModel <SearchFoodCategoryViewModel>()
            .AndNoModelErrors();
        }
        public ActionResult Index()
        {
            var foodCategories = this.foodCategoriesService.GetAllFoodCategories()
                                 .Select(this.mappingService.Map <FoodCategoryViewModel>)
                                 .ToList();

            var searchModel = new SearchFoodCategoryViewModel();

            if (foodCategories != null)
            {
                searchModel.FoodCategories = foodCategories;
                searchModel.PageSize       = gridPageSize;
                searchModel.TotalRecords   = foodCategories.Count();
            }

            return(this.View(searchModel));
        }
예제 #4
0
        public void RenderTheRightPartialViewWithTheCorrectModel_SearchFoodCategoryViewModelAndNoModelErrorsAndCorrectContent()
        {
            //Arrange
            IEnumerable <FoodCategory> foodCategories = new List <FoodCategory>()
            {
                new FoodCategory()
                {
                    Name = "tomato"
                }
            };
            var    gridPageSize             = 5;
            string name                     = "Tomato";
            var    foodCategorieServiceMock = new Mock <IFoodCategoriesService>();

            foodCategorieServiceMock.Setup(x => x.GetAllFoodCategories()).Returns(foodCategories);
            var mappingServiceMock  = new Mock <IMappingService>();
            var foodCategoriesModel = new List <FoodCategoryViewModel>()
            {
                new FoodCategoryViewModel()
                {
                    Name = name
                }
            };

            foreach (var foodCategory in foodCategories)
            {
                mappingServiceMock.Setup(x => x.Map <FoodCategoryViewModel>(foodCategory))
                .Returns(It.IsAny <FoodCategoryViewModel>());
            }

            var controller = new FoodCategoriesController(foodCategorieServiceMock.Object, mappingServiceMock.Object);

            var searchModel = new SearchFoodCategoryViewModel();

            searchModel.FoodCategories = foodCategoriesModel;
            searchModel.PageSize       = gridPageSize;
            searchModel.TotalRecords   = foodCategoriesModel.Count();

            //Act & Assert
            controller.WithCallTo(x => x.Search(name))
            .ShouldRenderPartialView("_FoodCategoriesGridPartial")
            .WithModel <SearchFoodCategoryViewModel>(
                viewModel => Assert.AreEqual(foodCategoriesModel.ToList()[0].Name, searchModel.FoodCategories.ToList()[0].Name))
            .AndNoModelErrors();
        }
        public ActionResult Search(string name)
        {
            var foodCategories = this.foodCategoriesService.GetAllFoodCategories()
                                 .Where(x => x.Name.ToLower().Contains(name.ToLower()))
                                 .Select(this.mappingService.Map <FoodCategoryViewModel>)
                                 .ToList();

            var searchModel = new SearchFoodCategoryViewModel();

            if (foodCategories != null)
            {
                searchModel.FoodCategories = foodCategories;
                searchModel.PageSize       = gridPageSize;
                searchModel.TotalRecords   = foodCategories.Count();
            }

            return(this.PartialView("_FoodCategoriesGridPartial", searchModel));
        }