public void Can_Add_New_Lines() { var game1 = new Game {GameId = 1, Name = "Игра1"}; var game2 = new Game {GameId = 2, Name = "Игра2"}; var cart = new Cart(); cart.AddItem(game1, 1); cart.AddItem(game2, 1); var results = cart.Lines.ToList(); Assert.AreEqual(results.Count(), 2); Assert.AreEqual(results[0].Game, game1); Assert.AreEqual(results[1].Game, game2); }
public void Calculate_Cart_Total() { var game1 = new Game {GameId = 1, Name = "Игра1", Price = 100}; var game2 = new Game {GameId = 2, Name = "Игра2", Price = 50}; var cart = new Cart(); cart.AddItem(game1, 1); cart.AddItem(game2, 1); cart.AddItem(game1, 5); var result = cart.ComputeTotalValue(); Assert.AreEqual(result, 650); }
public void Can_Add_Quantity_For_Existing_Lines() { var game1 = new Game {GameId = 1, Name = "Игра1"}; var game2 = new Game {GameId = 2, Name = "Игра2"}; var cart = new Cart(); cart.AddItem(game1, 1); cart.AddItem(game2, 1); cart.AddItem(game1, 5); var results = cart.Lines.OrderBy(c => c.Game.GameId).ToList(); Assert.AreEqual(results.Count(), 2); Assert.AreEqual(results[0].Quantity, 6); Assert.AreEqual(results[1].Quantity, 1); }
public RedirectToRouteResult AddToCart(Cart cart, int gameId, string returnUrl) { var game = _repository.Games.FirstOrDefault(g => g.GameId == gameId); if (game != null) cart.AddItem(game, 1); return RedirectToAction("Index", new {returnUrl}); }
public void Can_Clear_Cart() { var game1 = new Game {GameId = 1, Name = "Игра1", Price = 100}; var game2 = new Game {GameId = 2, Name = "Игра2", Price = 55}; var cart = new Cart(); cart.AddItem(game1, 1); cart.AddItem(game2, 1); cart.AddItem(game1, 5); cart.Clear(); Assert.AreEqual(cart.Lines.Count(), 0); }
public void Can_Remove_Line() { var game1 = new Game {GameId = 1, Name = "Игра1"}; var game2 = new Game {GameId = 2, Name = "Игра2"}; var game3 = new Game {GameId = 3, Name = "Игра3"}; var cart = new Cart(); cart.AddItem(game1, 1); cart.AddItem(game2, 4); cart.AddItem(game3, 2); cart.AddItem(game2, 1); cart.RemoveLine(game2); Assert.AreEqual(cart.Lines.Count(c => c.Game == game2), 0); Assert.AreEqual(cart.Lines.Count(), 2); }