Пример #1
0
        public void Indicates_Selected_VehicleCategory()
        {
            //Arrange
            string vehicleCategoryToSelect = "Toyota";
            Mock <IVehicleRepository> mock = new Mock <IVehicleRepository>();

            mock.Setup(m => m.Vehicles).Returns((new Vehicle[]
            {
                new Vehicle {
                    VehicleID = 1, Make = "V1", VehicleCategory = "Toyota"
                },
                new Vehicle {
                    VehicleID = 3, Make = "V1", VehicleCategory = "Nissan"
                },
            }).AsQueryable <Vehicle>());
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };
            target.RouteData.Values["vehicleCategory"] = vehicleCategoryToSelect;

            //Action
            string result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedVehicleCategory"];

            //Assert
            Assert.Equal(vehicleCategoryToSelect, result);
        }
Пример #2
0
        public void CanSelectCategories()
        {
            // Arrange
            Mock <IProductService> mock = new Mock <IProductService>();

            mock.Setup(m => m.GetAll()).Returns((new[]
            {
                new Product {
                    Id = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    Id = 2, Name = "P2", Category = "Apples"
                },
                new Product {
                    Id = 3, Name = "P3", Category = "Plums"
                },
                new Product {
                    Id = 4, Name = "P4", Category = "Oranges"
                },
            }).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            // Act = get the set of categories
            string[] results = ((IEnumerable <string>)((ViewViewComponentResult)target.Invoke()).ViewData.Model).ToArray();

            // Assert
            Assert.True(new[] { "Apples", "Oranges", "Plums" }.SequenceEqual(results));
        }
Пример #3
0
        public void Indicates_Selected_Category()
        {
            const string CategoryToSelect = "Apples";

            var mock = new Mock <IProductRepository>();

            mock.SetupGet(m => m.Products).Returns((new[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductID = 2, Name = "P2", Category = "Oranges"
                }
            }).AsQueryable());

            var target = new NavigationMenuViewComponent(mock.Object)
            {
                ViewComponentContext = new ViewComponentContext
                {
                    ViewContext = new ViewContext
                    {
                        RouteData = new RouteData()
                    }
                }
            };

            target.RouteData.Values["category"] = CategoryToSelect;

            var result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"];

            Assert.Equal(CategoryToSelect, result);
        }
Пример #4
0
        public void Can_Select_Categories()
        {
            // Arrange
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductID = 2, Name = "P2", Category = "Apples"
                },
                new Product {
                    ProductID = 3, Name = "P3", Category = "Plums"
                },
                new Product {
                    ProductID = 4, Name = "P4", Category = "Oranges"
                },
            }).AsQueryable <Product>());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            // Act = get the set of categories
            string[] results = ((IEnumerable <string>)(target.Invoke()
                                                       as ViewViewComponentResult).ViewData.Model).ToArray();

            // Assert
            Assert.True(Enumerable.SequenceEqual(
                            new string[] { "Apples", "Oranges", "Plums" }, results));
        }
Пример #5
0
        public void Can_Select_VehicleCategories()
        {
            //Arrange
            Mock <IVehicleRepository> mock = new Mock <IVehicleRepository>();

            mock.Setup(m => m.Vehicles).Returns((new Vehicle[]
            {
                new Vehicle {
                    VehicleID = 1, Make = "V1", VehicleCategory = "Toyota"
                },
                new Vehicle {
                    VehicleID = 2, Make = "V2", VehicleCategory = "Toyota"
                },
                new Vehicle {
                    VehicleID = 3, Make = "V3", VehicleCategory = "Nissan"
                },
                new Vehicle {
                    VehicleID = 4, Make = "V4", VehicleCategory = "Mazda"
                },
            }).AsQueryable <Vehicle>());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            //Act = get the set of vehicle categories
            string[] results = ((IEnumerable <string>)(target.Invoke() as ViewViewComponentResult).ViewData
                                .Model).ToArray();

            //Assert
            Assert.True(Enumerable.SequenceEqual(new string[] { "Toyota", "Mazda", "Nissan" }, results));
        }
Пример #6
0
        public void Indicates_Selected_Category()
        {
            // Arrange
            string categoryToSelect        = "Apples";
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductID = 4, Name = "P2", Category = "Oranges"
                },
            }).AsQueryable <Product>());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };
            target.RouteData.Values["category"] = categoryToSelect;

            // Action
            string result = (string)(target.Invoke() as
                                     ViewViewComponentResult).ViewData["SelectedCategory"];

            // Assert
            Assert.Equal(categoryToSelect, result);
        }
Пример #7
0
        public void Indicates_Selected_Category()
        {
            string categoryToSelect        = "Jabłka";
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Jabłka"
                },
                new Product {
                    ProductID = 4, Name = "P4", Category = "Pomarańcze"
                }
            }).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };

            target.RouteData.Values["category"] = categoryToSelect;

            string results = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"];

            Assert.Equal(categoryToSelect, results);
        }
Пример #8
0
        public void IndicatesSelectedCategory()
        {
            // Arrange
            const string           categoryToSelect = "Apples";
            Mock <IProductService> mock             = new Mock <IProductService>();

            mock.Setup(m => m.GetAll()).Returns((new[]
            {
                new Product {
                    Id = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    Id = 4, Name = "P2", Category = "Oranges"
                },
            }).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object)
            {
                ViewComponentContext = new ViewComponentContext {
                    ViewContext = new ViewContext {
                        RouteData = new RouteData()
                    }
                }
            };

            target.RouteData.Values["category"] = categoryToSelect;

            // Action
            string result = (string)((ViewViewComponentResult)target.Invoke()).ViewData["SelectedCategory"];

            // Assert
            Assert.Equal(categoryToSelect, result);
        }
Пример #9
0
        public void Can_Select_Categories()
        {
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Jabłka"
                },
                new Product {
                    ProductID = 2, Name = "P2", Category = "Jabłka"
                },
                new Product {
                    ProductID = 3, Name = "P3", Category = "Śliwki"
                },
                new Product {
                    ProductID = 4, Name = "P4", Category = "Pomarańcze"
                }
            }).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            string[] results = ((IEnumerable <string>)(target.Invoke() as ViewViewComponentResult).ViewData.Model).ToArray();

            Assert.True(Enumerable.SequenceEqual(new string[] { "Jabłka", "Pomarańcze", "Śliwki" }, results));
        }
        public void Indicates_Selected_Category()
        {
            //Организация
            string categoryToSelect        = "Apples";
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[] {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductId = 4, Name = "P2", Category = "Oranges"
                },
            }).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new Microsoft.AspNetCore.Routing.RouteData()
                }
            };

            target.RouteData.Values["category"] = categoryToSelect;

            //Действие
            string result = (string)(target.Invoke() as
                                     ViewViewComponentResult).ViewData["SelectedCategory"];

            //Утверждение
            Assert.Equal(categoryToSelect, result);
        }
        public void Can_Select_Categories()
        {
            //Организация
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[] {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductId = 2, Name = "P2", Category = "Apples"
                },
                new Product {
                    ProductId = 3, Name = "P3", Category = "Plums"
                },
                new Product {
                    ProductId = 4, Name = "P4", Category = "Oranges"
                }
            }).AsQueryable <Product>());

            NavigationMenuViewComponent target =
                new NavigationMenuViewComponent(mock.Object);

            //Действие - получение набора категорий
            string[] results = ((IEnumerable <string>)(target.Invoke()
                                                       as ViewViewComponentResult).ViewData.Model).ToArray();

            //Утверждение
            Assert.True(Enumerable.SequenceEqual(new string[] { "Apples",
                                                                "Oranges", "Plums" }, results));
        }
Пример #12
0
        public void Can_Select_Categories()
        {
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(GetRepositoryStub());

            string[] result = ((IEnumerable <string>)(target.Invoke() as ViewViewComponentResult).ViewData.Model).ToArray();

            Assert.True(Enumerable.SequenceEqual(new string[] { "K", "L", "M" }, result));
        }
        public void Can_Select_Categories()
        {
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(CreateData());

            string[] results = ((IEnumerable <string>)(target.Invoke() as ViewViewComponentResult).ViewData.Model).ToArray();

            Assert.True(Enumerable.SequenceEqual(new string[] { "Apples", "Oranges", "Plums" }, results));
        }
        public void Can_Select_Categories()
        {
            //
            Mock <IProductRepository> mock = GetMock();

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            //
            string[] result = ((IEnumerable <string>)(target.Invoke() as ViewViewComponentResult).ViewData.Model).ToArray();

            //
            Assert.True(Enumerable.SequenceEqual(new string[] { "One", "Three", "Two" }, result));
        }
        public void Can_Select_ArticleTypes()
        {
            var ArticleTypes             = GetArticleTypes();
            Mock <IStoreRepository> mock = new Mock <IStoreRepository>();

            mock.Setup(m => m.ArticleTypes)
            .Returns(ArticleTypes.AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            var componentResult = target.Invoke() as ViewViewComponentResult;
            var result          = componentResult.ViewData.Model as IEnumerable <ArticleType>;

            Assert.True(Enumerable.SequenceEqual(ArticleTypes, result));
        }
Пример #16
0
        public void Can_Select_Categories()
        {
            // Arrange
            var navigationMenu = new NavigationMenuViewComponent(Mock.Object);

            // Act
            var viewViewComponentResult = navigationMenu.Invoke() as ViewViewComponentResult;
            var model   = viewViewComponentResult.ViewData.Model;
            var results = (model as IEnumerable <string>).ToArray();

            // Assert
            var expected = new[] { "Apples", "Oranges", "Plums" };

            Assert.True(Enumerable.SequenceEqual(expected, results));
        }
Пример #17
0
        public void Can_Select_Categories()
        {
            //Arrange
            string categoryToSelect        = "Apples";
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns(
                (new Product[]
            {
                new Product {
                    ProductID = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductID = 2, Name = "P2", Category = "Apples"
                },
                new Product {
                    ProductID = 3, Name = "P3", Category = "Plums"
                },
                new Product {
                    ProductID = 4, Name = "P4", Category = "Oranges"
                }
            }
                ).AsQueryable <Product>());

            NavigationMenuViewComponent target =
                new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };
            target.RouteData.Values["category"] = categoryToSelect;

            //Act =get the set of categories
            string[] result = ((IEnumerable <string>)(target.Invoke()
                                                      as ViewViewComponentResult).ViewData.Model).ToArray();
            string result1 = (string)(target.Invoke() as
                                      ViewViewComponentResult).ViewData["SelectedCategory"];

            //Assert
            Assert.True(Enumerable.SequenceEqual(new string[] { "Apples",
                                                                "Oranges", "Plums" }, result));
            Assert.Equal(categoryToSelect, result1);
        }
        public void Can_Select_Categories_With_Counts()
        {
            Mock <ICarRepository> mock = new Mock <ICarRepository>();

            SetSeedData();
            mock.Setup(m => m.GetCarsAsync()).ReturnsAsync(_carsList);
            NavigationMenuViewComponent target =
                new NavigationMenuViewComponent(mock.Object);

            IDictionary <string, int> results = ((NavigationMenuViewComponentViewModel)(target.InvokeAsync().Result as ViewViewComponentResult)
                                                 .ViewData.Model).Categories;

            string[] resultBrands = results.Keys.ToArray();
            int[]    resultCounts = results.Values.ToArray();
            Assert.True(Enumerable.SequenceEqual((new string[] { "Audi", "BMW", "Toyota" }).OrderBy(x => x), resultBrands));
            Assert.True(Enumerable.SequenceEqual((new int[] { 1, 1, 1 }), resultCounts));
        }
        public void Indicates_Selected_Category()
        {
            string categoryToSelect            = "Apples";
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(CreateData());

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new Microsoft.AspNetCore.Mvc.Rendering.ViewContext
                {
                    RouteData = new Microsoft.AspNetCore.Routing.RouteData()
                }
            };
            target.RouteData.Values["category"] = categoryToSelect;

            string result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"];

            Assert.Equal(categoryToSelect, result);
        }
Пример #20
0
        public void Indicates_Selected_Category()
        {
            string selectedCategory            = "M";
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(GetRepositoryStub());

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };
            target.RouteData.Values["category"] = selectedCategory;

            string result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"]; // ViewBag.SelectedCategory

            Assert.Equal(selectedCategory, result);
        }
        public void Can_Select_Categories()
        {
            //Arrang

            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(r => r.Products).Returns(products);

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);


            //Act
            string[] result = (((target.Invoke() as ViewViewComponentResult)
                                .ViewData.Model as CategoryListViewModel).Categories).ToArray();

            //Assert
            Assert.True(Enumerable.SequenceEqual(new string[] { "Box", "Rugby", "SkySport", "Soccer" }, result));
        }
        public void IndicatesSelectedCategory()
        {
            //Arrange
            var categoryToSelect   = "Apples";
            var mockRepository     = new Mock <IStoreRepository>();
            var expectedCategories = new[] { "Apples", "Oranges", "Plums" };
            var expectedProducts   = new Product[]
            {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductId = 2, Name = "P2", Category = "Apples"
                },
                new Product {
                    ProductId = 3, Name = "P3", Category = "Plums"
                },
                new Product {
                    ProductId = 4, Name = "P4", Category = "Oranges"
                },
            };

            mockRepository.Setup(repository => repository.Products)
            .Returns(expectedProducts.AsQueryable());

            var viewComponent = new NavigationMenuViewComponent(mockRepository.Object)
            {
                ViewComponentContext = new ViewComponentContext()
                {
                    ViewContext = new ViewContext()
                    {
                        RouteData = new RouteData()
                    }
                }
            };

            viewComponent.RouteData.Values["category"] = categoryToSelect;

            //Act
            var result = (string)((viewComponent.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"]);

            //Assert
            Assert.Equal(categoryToSelect, result);
        }
        public void Indicate_Selected_Category()
        {
            //Arrange
            Mock <IProductRepository> mockRepository = new Mock <IProductRepository>();

            mockRepository.SetupGet(m => m.Products)
            .Returns((new[] {
                new Product {
                    ProductID = 1, Category = "B"
                },
                new Product {
                    ProductID = 2, Category = "B"
                },
                new Product {
                    ProductID = 3, Category = "A"
                },
                new Product {
                    ProductID = 4, Category = "A"
                },
                new Product {
                    ProductID = 5, Category = "B"
                }
            }
                      ).AsQueryable());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mockRepository.Object);

            target.ViewComponentContext = new ViewComponentContext()
            {
                ViewContext = new ViewContext()
                {
                    RouteData = new RouteData()
                }
            };

            target.RouteData.Values["categoryy"] = "B";

            //Act
            ViewViewComponentResult componentResult = (ViewViewComponentResult)target.Invoke();
            string result = (string)componentResult.ViewData["categoryToSelectt"];

            //Assert
            Assert.Equal("B", result);
        }
Пример #24
0
        public void Can_Select_Categories()
        {
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns((new Product[]
            {
                new Product {
                    ProductId = 1, Name = "P1", Category = "C1"
                },
                new Product {
                    ProductId = 2, Name = "P2", Category = "C2"
                },
                new Product {
                    ProductId = 3, Name = "P3", Category = "C3"
                },
                new Product {
                    ProductId = 4, Name = "P4", Category = "C4"
                },
                new Product {
                    ProductId = 5, Name = "P5", Category = "C1"
                },
            }).AsQueryable()
                                                );
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };

            string categoryToSelect = "Apples";

            target.RouteData.Values["category"] = categoryToSelect;
            string result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"];

            string[] results =
                ((IEnumerable <string>)(target.Invoke() as ViewComponentResult).ViewData.Model).ToArray();

            Assert.Equal(categoryToSelect, result);
            Assert.True(Enumerable.SequenceEqual(new string[] { "C1", "C2", "C3", "C4" }, results));
        }
Пример #25
0
        public void Can_SelectCategory()
        {
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(p => p.Products).Returns(new Product[]
            {
                new Product()
                {
                    ProductID = 1, Category = "cat1"
                },
                new Product()
                {
                    ProductID = 2, Category = "cat2"
                },
                new Product()
                {
                    ProductID = 3, Category = "cat2"
                },
                new Product()
                {
                    ProductID = 4, Category = "cat3"
                },
                new Product()
                {
                    ProductID = 5, Category = "cat4"
                },
                new Product()
                {
                    ProductID = 6, Category = "cat4"
                }
            }.AsQueryable <Product>());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            Dictionary <string, int> result =
                ((Dictionary <string, int>)(target.Invoke() as ViewViewComponentResult)?.ViewData.Model);


            Assert.True(result.Count == 4);
            Assert.Equal("cat4", result.Keys.ToArray()[3]);
            Assert.True(Enumerable.SequenceEqual(new string[] { "cat1", "cat2", "cat3", "cat4" }, result.Keys));
        }
        public void Indicates_Selected_Category()
        {
            // Arrange
            const string categoryToSelect = "Apples";

            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.Setup(m => m.Products).Returns(new[]
            {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Apples"
                },
                new Product {
                    ProductId = 4, Name = "P2", Category = "Oranges"
                },
            });

            var target = new NavigationMenuViewComponent(mock.Object)
            {
                ViewComponentContext = new ViewComponentContext
                {
                    ViewContext = new ViewContext {
                        RouteData = new RouteData()
                    }
                }
            };

            target.RouteData.Values["category"] = categoryToSelect;

            // Act
            var results = target.Invoke() as ViewViewComponentResult;

            if (results == null)
            {
                throw new XunitException("results is null.");
            }

            var selectedCategory = (string)results.ViewData["SelectedCategory"];

            // Assert
            Assert.Equal(categoryToSelect, selectedCategory);
        }
        public void Can_Select_Categories()
        {
            // Arrange
            Mock <IProductRepository> mock = new Mock <IProductRepository>();

            mock.SetupGet(m => m.Products).Returns(
                new Product[] {
                new Product {
                    ProductId = 1, Name = "P1", Category = "Cat1"
                },
                new Product {
                    ProductId = 2, Name = "P2", Category = "Cat2"
                },
                new Product {
                    ProductId = 3, Name = "P3", Category = "Cat3"
                },
                new Product {
                    ProductId = 4, Name = "P4", Category = "Cat1"
                },
                new Product {
                    ProductId = 5, Name = "P5", Category = "Cat1"
                },
                new Product {
                    ProductId = 6, Name = "P6", Category = "Cat3"
                },
                new Product {
                    ProductId = 7, Name = "P7", Category = "Cat1"
                },
                new Product {
                    ProductId = 8, Name = "P8", Category = "Cat1"
                }
            }.AsQueryable()
                );
            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            // Act
            string[] results = ((target.Invoke() as ViewViewComponentResult).ViewData.Model as IEnumerable <string>).ToArray();

            // Assert
            Assert.True(results.Count() == 3);
            Assert.True(Enumerable.SequenceEqual(new string[] { "Cat1", "Cat2", "Cat3" }, results));
        }
        public void Indicates_Selected_Category()
        {
            string categoryToSelect    = "AClass";
            Mock <ICarRepository> mock = new Mock <ICarRepository>();

            mock.Setup(m => m.Cars).Returns((new Car[]
            {
                new Car {
                    CarID = 1, Model = "P1", Category = "AClass"
                },
                new Car {
                    CarID = 1, Model = "P1", Category = "AClass"
                },
                new Car {
                    CarID = 1, Model = "P1", Category = "BClass"
                },
                new Car {
                    CarID = 1, Model = "P1", Category = "CClass"
                },
                new Car {
                    CarID = 1, Model = "P1", Category = "AClass"
                },
            }).AsQueryable <Car>());

            NavigationMenuViewComponent target = new NavigationMenuViewComponent(mock.Object);

            target.ViewComponentContext = new ViewComponentContext()
            {
                ViewContext = new ViewContext
                {
                    RouteData = new RouteData()
                }
            };
            target.RouteData.Values["category"] = categoryToSelect;

            //Action
            string result = (string)(target.Invoke() as ViewViewComponentResult).ViewData["SelectedCategory"];

            //Assertion

            Assert.Equal(categoryToSelect, result);
        }
Пример #29
0
        public void Can_Select_Categories()
        {
            //Arrange
            Mock<IProductRepository> mockProductRepository = new Mock<IProductRepository>();
            mockProductRepository.Setup(repository => repository.Products).Returns(new[]
            {
                new Product {ProductID = 1, Name = "P1", Category = "Apples"},
                new Product {ProductID = 2, Name = "P2", Category = "Apples"},
                new Product {ProductID = 3, Name = "P3", Category = "Plums"},
                new Product {ProductID = 4, Name = "P4", Category = "Oranges"}
            }.AsQueryable());

            var target = new NavigationMenuViewComponent(mockProductRepository.Object);

            //Act
            var results = ((IEnumerable<string>) (target.Invoke() as ViewViewComponentResult).ViewData.Model).ToArray();

            //Assert
            Assert.True(new[] {"Apples", "Oranges", "Plums"}.SequenceEqual(results));
        }
Пример #30
0
        public async Task Indicate_Selected_Category()
        {
            var options = new DbContextOptionsBuilder <SportStoreDbContext>()
                          .UseInMemoryDatabase(databaseName: "Indicate_Selected_Category")
                          .Options;

            string categorySelected = "Apples";

            using (var context = new SportStoreDbContext(options))
            {
                context.Products.Add(new Product {
                    Id = 1, Name = "P1", Category = "Apples"
                });
                context.Products.Add(new Product {
                    Id = 4, Name = "P2", Category = "Oranges"
                });


                context.SaveChanges();

                var productService = new ProductService(context);

                NavigationMenuViewComponent target =
                    new NavigationMenuViewComponent(productService);

                target.ViewComponentContext = new ViewComponentContext
                {
                    ViewContext = new Microsoft.AspNetCore.Mvc.Rendering.ViewContext
                    {
                        RouteData = new Microsoft.AspNetCore.Routing.RouteData()
                    }
                };

                target.RouteData.Values["category"] = categorySelected;

                string result = (string)(await target.InvokeAsync() as ViewViewComponentResult)
                                .ViewData["SelectedCategory"];

                Assert.Equal(categorySelected, result);
            }
        }