public void Add_Meal_To_Basket_Ok() { //Arrange var mock = new Mock <IBasketRepository>(); MealBTO meal1 = new MealBTO { Id = 1, Name = "P1" }; MealBTO meal2 = new MealBTO { Id = 2, Name = "P2" }; //Arrange BasketUC target = new BasketUC(mock.Object); //Act target.AddMealToBasket(meal1, 1); target.AddMealToBasket(meal2, 1); var results = target.shoppingMeals; //Assert Assert.AreEqual(results.Count, 2); Assert.AreEqual(results[0].Meal.Id, meal1.Id); Assert.AreEqual(results[0].Meal.Name, meal1.Name); Assert.AreEqual(results[1].Meal.Id, meal2.Id); Assert.AreEqual(results[1].Meal.Name, meal2.Name); }
public void Add_Meal_To_Basket_Can_Add_Quantity() { //Arrange var mock = new Mock <IBasketRepository>(); MealBTO meal1 = new MealBTO { Id = 1, Name = "P1" }; MealBTO meal2 = new MealBTO { Id = 2, Name = "P2" }; BasketUC target = new BasketUC(mock.Object); //Act target.AddMealToBasket(meal1, 1); target.AddMealToBasket(meal2, 1); target.AddMealToBasket(meal1, 10); var results = target.shoppingMeals; //Assert Assert.AreEqual(results.Count, 2); Assert.AreEqual(results[0].Quantity, 11); Assert.AreEqual(results[1].Quantity, 1); }
public void Sum_Amount_Ok() { //Arrange var mock = new Mock <IBasketRepository>(); MealBTO meal1 = new MealBTO { Id = 1, Name = "P1", Price = 10 }; MealBTO meal2 = new MealBTO { Id = 2, Name = "P2", Price = 5 }; //Arrange BasketUC target = new BasketUC(mock.Object); //Act target.AddMealToBasket(meal1, 1); target.AddMealToBasket(meal2, 1); target.AddMealToBasket(meal1, 3); var results = target.ComputeTotalValue(); //Assert Assert.AreEqual(results, 45); }
public void Can_Remove_Meal() { //Arrange var mock = new Mock <IBasketRepository>(); MealBTO meal1 = new MealBTO { Id = 1, Name = "M1" }; MealBTO meal2 = new MealBTO { Id = 2, Name = "M2" }; MealBTO meal3 = new MealBTO { Id = 3, Name = "M3" }; //Arrange BasketUC target = new BasketUC(mock.Object); //Act target.AddMealToBasket(meal1, 1); target.AddMealToBasket(meal2, 3); target.AddMealToBasket(meal3, 5); target.RemoveMeal(meal2); //Assert Assert.AreEqual(target.shoppingMeals.Count, 2); Assert.AreEqual(target.shoppingMeals.Where(c => c.Meal.Id == meal2.Id).Count(), 0); }
public IActionResult CreateMeal(int Id) { MealBTO result = new MealBTO(); result.MealType = new MealTypeBTO { Id = Id }; return(View(result)); }
public MealBTO AddMeal(MealBTO mealBto) { MealDTO meal = new MealDTO(); if (mealBto != null) { meal = mealRepository.Create(mealBto.BTOToMealDomain().MealDomainToDTO()); return(meal.DTOToMealDomain().MealDomainToBTO()); } return(null); }
public MealBTO UpdateMeal(MealBTO mealBto) { MealDTO meal = new MealDTO(); if (mealBto != null) { meal = mealRepository.Update(mealBto.BTOToMealDomain().MealDomainToDTO()); return(meal?.DTOToMealDomain().MealDomainToBTO() ?? null); } return(null); }
public IActionResult CreateMeal(MealBTO mealBTO) { int idToReturn = mealBTO.MealType.Id; if (!ModelState.IsValid) { return(View(mealBTO)); } var result = mealUC.AddMeal(mealBTO); if (result == null) { return(RedirectToAction("Error", new { errorMessage = "We can't add this meal, please contact support" })); } return(RedirectToAction("GetAllMealsByMealTypeId", new { Id = idToReturn })); }
public void AddMealToBasket(MealBTO mealBTO, int quantity) { ShoppingMealDomain shoppingMeal = shoppingMeals .Where(x => x.Meal.Id == mealBTO.Id) .FirstOrDefault(); if (shoppingMeal == null) { shoppingMeals.Add(new ShoppingMealDomain { Meal = mealBTO.BTOToMealDomain(), MealId = mealBTO.Id, Quantity = quantity }); } else { shoppingMeal.Quantity += quantity; } }
public static MealDomain BTOToMealDomain(this MealBTO mealBto) { if (mealBto != null) { return new MealDomain { Id = mealBto.Id, Name = mealBto.Name, Description = mealBto.Description, Price = mealBto.Price, MealTypeID = mealBto.MealTypeID, MealType = mealBto.MealType.BTOToMealTypeDomain() } } ; else { return(null); } }
public void Add_Meal_To_Basket_Ok() { //Arrange var mock = new Mock <IBasketRepository>(); MealBTO meal1 = new MealBTO { Id = 1, Name = "M1" }; MealBTO meal2 = new MealBTO { Id = 2, Name = "M2" }; //Arrange BasketUC target = new BasketUC(mock.Object); //Act target.AddMealToBasket(meal1, 1); target.AddMealToBasket(meal2, 1); target.ClearShoppingMeals(); //Assert Assert.AreEqual(target.shoppingMeals.Count, 0); }
public void RemoveMeal(MealBTO mealBTO) { shoppingMeals.RemoveAll(x => x.Meal.Id == mealBTO.Id); }