public ActionResult CompleteOrder() { var myCart = getMyShoppingCart(); User myUser = new UserBLL().getUserByEmail(User.Identity.Name); if(myUser == null) SetSessionMessage(View(), SESSIONMESSAGE.FAIL, "Something went wrong. Please try again"); var myOrder = new Order(); myOrder.User = myUser; myOrder.DateTime = DateTime.Now; myOrder.Items = new List<OrderLine>(); var itemTransaction = new ItemBLL(); foreach(var item in myCart.Items) { item.InStock--; itemTransaction.Update(item); var orderLine = new OrderLine() { Amount = 1, Discount = 0, Item = item }; myOrder.Items.Add(orderLine); } var updatedOrder = new OrderBLL().Insert(myOrder); if(updatedOrder == null) SetSessionMessage(View(), SESSIONMESSAGE.FAIL, "Something went wrong. The order is not registered"); myCart.EmptyCart(); return SetSessionMessage(RedirectToAction("ListAll", "DisplayItems", new { area = "Common" }), SESSIONMESSAGE.SUCCESS, "The order is registered"); }
public void GetOrderList() { //Arrange var controller = new OrderController(new OrderBLL(new OrderServiceStub())); var order = new Order { OrderNumber = 1, DateTime = DateTime.Now, OrderPriceTotal = 100, User = new User { UserID = 1, FirstName = "Espen", LastName = "Zaal", Address = "Osloveien 123", PostCode = "1234", PostAddress = "Oslo", Email = "*****@*****.**", Orders = new List<Order>(), Password = "******", RoleId = 1, RoleStringId = "C", Telephone = "22334455" }, Items = new List<OrderLine>() }; //Act List<Order> forventetListe = new List<Order>(); forventetListe.Add(order); forventetListe.Add(order); forventetListe.Add(order); var actionResult = (ViewResult)controller.Index(); var resultat = (List<Order>)actionResult.Model; //Assert for(var i = 0; i < forventetListe.Count; i++) { Assert.AreEqual(forventetListe[i].OrderNumber, resultat[i].OrderNumber); Assert.AreEqual(forventetListe[i].OrderPriceTotal, resultat[i].OrderPriceTotal); var forventetUser = forventetListe[i].User; var resUser = resultat[i].User; Assert.AreEqual(forventetUser.UserID, resUser.UserID); Assert.AreEqual(forventetUser.FirstName, resUser.FirstName); Assert.AreEqual(forventetUser.LastName, resUser.LastName); Assert.AreEqual(forventetUser.Address, resUser.Address); Assert.AreEqual(forventetUser.PostCode, resUser.PostCode); Assert.AreEqual(forventetUser.PostAddress, resUser.PostAddress); Assert.AreEqual(forventetUser.Email, resUser.Email); Assert.AreEqual(forventetUser.Password, resUser.Password); Assert.AreEqual(forventetUser.RoleId, resUser.RoleId); Assert.AreEqual(forventetUser.RoleStringId, resUser.RoleStringId); Assert.AreEqual(forventetUser.Telephone, resUser.Telephone); var forventetItems = forventetListe[i].Items; var resItems = resultat[i].Items; } Assert.AreEqual(actionResult.ViewName, ""); }