public void Can_Add_Product_To_Cart() { // Arrange: Set up a mock repository with two products var mockProductsRepos = new Moq.Mock<IProductsRepository>(); var products = new System.Collections.Generic.List<Product> { new Product { ProductID = 14, Name = "Much Ado About Nothing" }, new Product { ProductID = 27, Name = "The Comedy of Errors" }, }; mockProductsRepos.Setup(x => x.Products) .Returns(products.AsQueryable()); var cart = new Cart(); var controller = new CartController(mockProductsRepos.Object, null); // Act: Try adding a product to the cart RedirectToRouteResult result = controller.AddToCart(cart, 27, "someReturnUrl"); // Assert Assert.AreEqual(1, cart.Lines.Count); Assert.AreEqual("The Comedy of Errors", cart.Lines[0].Product.Name); Assert.AreEqual(1, cart.Lines[0].Quantity); // Check that the visitor was redirected to the cart display screen Assert.AreEqual("Index", result.RouteValues["action"]); Assert.AreEqual("someReturnUrl", result.RouteValues["returnUrl"]); }
public void Addig_Products_To_Cart_Goes_To_Cart_Screen() { var mock = new Mock<IProductRepository>(); mock.Setup(m => m.Products).Returns(new[] { new Product {ProductID = 1, Name = "p1", Category = "Apples"} }.AsQueryable()); var cart = new Cart(); var target = new CartController(mock.Object, null); var result = target.AddToCart(cart, 2, "myUrl"); Assert.AreEqual(result.RouteValues["action"], "Index"); Assert.AreEqual(result.RouteValues["returnUrl"], "myUrl"); }
public void Can_Add_To_Cart() { var mock = new Mock<IProductRepository>(); mock.Setup(m => m.Products).Returns(new[] { new Product {ProductID = 1, Name = "P1", ProductCategory =new ProductCategory{Name = "A"}} }.AsQueryable()); var cart = new Cart(); var target = new CartController(mock.Object, null,null,null,null); target.AddToCart(cart, 1, null); Assert.AreEqual(cart.Lines.Count(), 1); Assert.AreEqual(cart.Lines.ToArray()[0].Product.ProductID, 1); }
public void Change_Quantity_Product() { var mock = new Mock<IProductRepository>(); mock.Setup(m => m.Products).Returns(new[] { new Product {ProductID = 1, Name = "P1"} }.AsQueryable()); var cart = new Cart(); var target = new CartController(mock.Object, null, null, null, null); // target.AddToCart(cart, 1, null);//добавим target.ChangeQuantity(cart, 1, null,2);// сменим кол-во // Assert.AreEqual(cart.Lines.ElementAt(0).Quantity, 2); }
public void Adding_Goods_To_Cart_Goes_To_Cart_Screen() { // Организация - создание имитированного хранилища Mock<IFurnitureRepository> mock = new Mock<IFurnitureRepository>(); mock.Setup(m => m.Furnitures).Returns(new List<Furniture> { new Furniture { Id = 1, Name = "Мебель1", Description = "Описание", Section = "Раздел", Price = 100 }, }.AsQueryable()); // Организация - создание корзины Cart cart = new Cart(); // Организация - создание контроллера CartController controller = new CartController(mock.Object); // Действие - добавить товар в корзину RedirectToRouteResult result = controller.AddToCart(cart, 2, "myUrl"); // Утверждение Assert.AreEqual(result.RouteValues["action"], "Index"); Assert.AreEqual(result.RouteValues["returnUrl"], "myUrl"); }
public void Can_Add_To_Cart() { // Организация - создание имитированного хранилища Mock<IFurnitureRepository> mock = new Mock<IFurnitureRepository>(); mock.Setup(m => m.Furnitures).Returns(new List<Furniture> { new Furniture { Id = 1, Name = "Мебель1", Description = "Описание", Section = "Раздел", Price = 100 }, }.AsQueryable()); // Организация - создание корзины Cart cart = new Cart(); // Организация - создание контроллера CartController controller = new CartController(mock.Object); // Действие - добавить игру в корзину controller.AddToCart(cart, 1, null); // Утверждение Assert.AreEqual(cart.Lines.Count(), 1); Assert.AreEqual(cart.Lines.ToList()[0].Furniture.Id, 1); }