public void CanCreateCategories() { // Arrange // - create the mock repository var mock = new Mock<IProductRepository>(); mock.Setup(m => m.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()); // Arrange - create the controller var target = new NavController(mock.Object); // Act = get the set of categories string[] results = ((IEnumerable<string>)target.Menu().Model).ToArray(); // Assert Assert.AreEqual(results.Length, 3); Assert.AreEqual(results[0], "Apples"); Assert.AreEqual(results[1], "Oranges"); Assert.AreEqual(results[2], "Plums"); }
public void IndicatesSelectedCategory() { // Arrange // - create the mock repository var 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" }, }.AsQueryable()); // Arrange - create the controller var target = new NavController(mock.Object); // Arrange - define the category to selected string categoryToSelect = "Apples"; // Action string result = target.Menu(categoryToSelect).ViewBag.SelectedCategory; // Assert Assert.AreEqual(categoryToSelect, result); }