private static void SelectOption(MealContext db) { Console.WriteLine("Please Select an option by enter number of selection:"); Console.WriteLine("1. Create new Meal"); Console.WriteLine("2. View All Meals"); Console.WriteLine("3. Exit Application"); int selection = int.Parse(Console.ReadLine()); if (selection == 1) { Console.Clear(); CreateNewMeal(db); } else if (selection == 2) { Console.Clear(); SelectAllMeals(db); } else if (selection == 3) { ExitApplication(); } else { Console.WriteLine("Invalid Selection"); Console.Clear(); SelectOption(db); } }
public void MyTestMethod() { var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { //ARRANGE var IngredientToUseInTest = new IngredientTO { Id = 1, IsAllergen = true, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL") }; IRepositoryDO_NOT_USE <IngredientTO, int> ingredientRepository2 = new IngredientRepository2(memoryCtx); //ACT ingredientRepository2.Create(IngredientToUseInTest); memoryCtx.SaveChanges(); //MealToUseInTest.Id = 1; IngredientToUseInTest.IsAllergen = false; ingredientRepository2.Edit(IngredientToUseInTest); var qtdEntriesToAssert = memoryCtx.SaveChanges(); var IngredientToAssert = ingredientRepository2.GetById(1); //ASSERT Assert.AreEqual(1, qtdEntriesToAssert); Assert.AreEqual(1, ingredientRepository2.GetAll().Count()); Assert.AreEqual(1, IngredientToAssert.Id); Assert.IsFalse(IngredientToAssert.IsAllergen); Assert.AreEqual("Ingr1EN", IngredientToAssert.Name.English); } }
public void IRepositoryDeleteByTransfertObject_ShouldDelete_WhenValidTOIsProvided() { //ASSERT var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { //ARRANGE var MealToUseInTest1 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal1EN", "Meal1FR", "Meal1NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 1, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var MealToUseInTest2 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal2EN", "Meal2FR", "Meal2NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 2, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var mealRepository = new MealRepository(memoryCtx); //ACT mealRepository.Add(MealToUseInTest1); mealRepository.Add(MealToUseInTest2); memoryCtx.SaveChanges(); MealToUseInTest2.Id = 2; mealRepository.Remove(MealToUseInTest2); memoryCtx.SaveChanges(); var retrievedMeals = mealRepository.GetAll(); Assert.AreEqual(1, retrievedMeals.Count()); Assert.IsFalse(retrievedMeals.Any(x => x.Id == 2)); } }
public void IRepositoryDeleteByTranfertObject_ShouldThrowException_WhenDeletingANonExistantMeal() { //ASSERT var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { //ARRANGE var MealToUseInTest1 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal1EN", "Meal1FR", "Meal1NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 1, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var MealToUseInTest2 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal2EN", "Meal2FR", "Meal2NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 2, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var mealRepository = new MealRepository(memoryCtx); //ACT mealRepository.Add(MealToUseInTest1); mealRepository.Add(MealToUseInTest2); memoryCtx.SaveChanges(); MealToUseInTest2.Id = 2; mealRepository.Remove(MealToUseInTest2); memoryCtx.SaveChanges(); //ASSERT Assert.ThrowsException <Exception>(() => mealRepository.Remove(MealToUseInTest2)); } }
public void IRepositoryGetAll_ShouldRetrieveMeals_WhenCalled() { //ASSERT var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { //ARRANGE var MealToUseInTest1 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal1EN", "Meal1FR", "Meal1NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 1, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var MealToUseInTest2 = new MealTO { Id = 0, Name = new MultiLanguageString("Meal2EN", "Meal2FR", "Meal2NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 2, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var mealRepository = new MealRepository(memoryCtx); //ACT mealRepository.Add(MealToUseInTest1); mealRepository.Add(MealToUseInTest2); memoryCtx.SaveChanges(); var retrievedMeals = mealRepository.GetAll(); Assert.AreEqual(2, retrievedMeals.Count()); Assert.AreEqual(1, retrievedMeals.FirstOrDefault().Id); } }
private static void SelectAllMeals(MealContext db) { var meals = from m in db.Meals select m; foreach (Meal meal in meals) { Console.WriteLine("Id: {0}. Meat: {1}. Vegetable: {2}. Other Item:{3}.", meal.id, meal.meat, meal.vegetable, meal.otherItem); } Console.ReadLine(); SelectOption(db); }
public MealsController(MealContext context) { _context = context; if (_context.MealItems.Count() == 0) { _context.MealItems.Add(new MealItem { Name = "Item1" }); _context.SaveChanges(); } }
public static CartHead GetCart(MealContext context, HttpRequestBase request, HttpResponseBase response) { var cook = request.Cookies.Get("meal_id"); if (cook != null) { var cart = context.Cart.Where(c => c.meal_id == cook.Value) .Include(c => c.Items) .FirstOrDefault(); if (cart.Closed) { response.Cookies["meal_id"].Expires = DateTime.Now.AddDays(-1); } return(cart); } return(null); }
public static IHtmlString CartNumberOfItems(this HtmlHelper htmlHelper, HttpRequestBase request, HttpResponseBase response) { var context = new MealContext(); var cart = Utils.GetCart(context, request, response); double number = 0; if (cart != null) { number = cart.Items.Select(c => c.Quantity).Sum(); } var divprice = new TagBuilder("span"); divprice.AddCssClass("badge badge-light"); divprice.InnerHtml = ((int)number).ToString(); var html = divprice.ToString(TagRenderMode.Normal); return(MvcHtmlString.Create(html)); }
public void IRepositoryUpdate_ShouldUpdateInDb_WhenValidMealIsProvided() { var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { //ARRANGE var MealToUseInTest = new MealTO { Id = 1, Name = new MultiLanguageString("Meal1EN", "Meal1FR", "Meal1NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 2, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Salad }; var mealRepository = new MealRepository(memoryCtx); //ACT mealRepository.Add(MealToUseInTest); memoryCtx.SaveChanges(); //MealToUseInTest.Id = 1; MealToUseInTest.MealType = MealType.Sandwich; mealRepository.Update(MealToUseInTest); memoryCtx.SaveChanges(); var MealToAssert = mealRepository.GetById(1); //ASSERT Assert.AreEqual(1, mealRepository.GetAll().Count()); Assert.AreEqual(1, MealToAssert.Id); Assert.AreEqual(2, MealToAssert.Ingredients.FirstOrDefault().Id); Assert.AreEqual("Meal1EN", MealToAssert.Name.English); Assert.AreEqual(MealType.Sandwich, MealToAssert.MealType); } }
private static void CreateNewMeal(MealContext db) { Meal AMeal = new Meal(); Console.Write("Enter Meat: "); AMeal.meat = Console.ReadLine(); Console.Write("Enter Vegetable: "); AMeal.vegetable = Console.ReadLine(); Console.Write("Other Item: "); AMeal.otherItem = Console.ReadLine(); Console.Clear(); Console.WriteLine("Adding Meal"); db.Meals.Add(AMeal); Console.WriteLine("Meal Added, now Saving Changes"); db.SaveChanges(); Console.WriteLine("Changes Saved"); Console.ReadLine(); Console.Clear(); SelectOption(db); }
public void IRepositoryGetByID_ShouldRetrieveMeal_WhenValidIdIsProvided() { //ARRANGE var options = new DbContextOptionsBuilder <MealContext>() .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name) .Options; using (var memoryCtx = new MealContext(options)) { var MealToUseInTest = new MealTO { Id = 0, Name = new MultiLanguageString("Meal1EN", "Meal1FR", "Meal1NL"), Ingredients = new List <IngredientTO> { new IngredientTO { Id = 1, Name = new MultiLanguageString("Ingr1EN", "Ingr1FR", "Ingr1NL"), IsAllergen = false } }, Supplier = new SupplierTO { Name = "Fournisseur1" }, MealType = MealType.Sandwich }; var mealRepository = new MealRepository(memoryCtx); //ACT mealRepository.Add(MealToUseInTest); memoryCtx.SaveChanges(); var retrivedMeal = mealRepository.GetById(1); //ASSERT Assert.AreEqual(1, retrivedMeal.Id); Assert.AreEqual("Meal1EN", mealRepository.GetById(1).Name.English); } }
public IngredientRepository2(MealContext ContextIoC) : base(ContextIoC) { mealContext = ContextIoC ?? throw new ArgumentNullException($"{nameof(ContextIoC)} in IngredientRepository"); }
static void Main(string[] args) { var db = new MealContext(); SelectOption(db); }
public SupplierRepository2(MealContext ContextIoC) : base(ContextIoC) { mealContext = ContextIoC ?? throw new ArgumentNullException($"{nameof(ContextIoC)} in SupplierRepository"); localRepo = this; }
public static IHtmlString CartPreview(this HtmlHelper htmlHelper, HttpRequestBase request, HttpResponseBase response) { // < div class="btn-group"> // <form class="p-4"> // <div class="dropdown-menu dropdown-menu-right p-4"> // <div class="row"> // <div class="col-md-6">Panino e panelle</div> // <div class="col-md-6"><input type = "number" class="form-control" value="2" /></div> // </div> // <div class="dropdown-divider"></div> // <div class="row"> // <div class="col-md-6">Coca cola</div> // <div class="col-md-6"><input type = "number" class="form-control" value="2" onchange="cart_reload(1,this)" /></div> // </div> // <div class="dropdown-divider"></div> // </div> // </form> //</div> var context = new MealContext(); var cart = Utils.GetCart(context, request, response); var bd = new StringBuilder(); var divext = new TagBuilder("div"); divext.AddCssClass("btn-group"); var form = new TagBuilder("div"); form.Attributes.Add("style", "font-size:smaller!important;"); form.AddCssClass("p-2"); var divint = new TagBuilder("div"); divint.AddCssClass("dropdown-menu dropdown-menu-right p-4"); bd.Append(divext.ToString(TagRenderMode.StartTag)); bd.Append(form.ToString(TagRenderMode.StartTag)); bd.Append(divint.ToString(TagRenderMode.StartTag)); if (cart == null || cart?.Items.Count == 0) { bd.Append("<div class=\"row\"><small>Nessun prodotto</small></div>"); } else { var tb = "<table class=\"table table-borderless\">"; tb += "<thead>"; tb += "<tr>"; tb += "<th scope=\"col\">Prodotto</th>"; tb += "<th scope=\"col\">Quantità</th>"; tb += "</tr></thead><tbody>"; foreach (var row in cart.Items) { tb += "<tr>"; tb += "<td>" + row.ItemName + "</td>"; tb += "<td>" + row.Quantity.ToString(CultureInfo.InvariantCulture) + "</td>"; tb += "</tr>"; //var divrow = new TagBuilder("div"); //divrow.AddCssClass("row"); //var col1 = new TagBuilder("div"); //col1.AddCssClass("col-md-6"); //col1.InnerHtml = "<small>"+row.ItemName+"</small>"; //var col2 = new TagBuilder("div"); //col2.AddCssClass("col-md-6"); //var input = new TagBuilder("input"); //input.AddCssClass(""); //input.Attributes.Add("type", "number"); //input.Attributes.Add("value", row.Quantity.ToString(CultureInfo.InvariantCulture)); //input.Attributes.Add("onchange", "cart_reload(" + row.CartRowId + ", this)"); //col2.InnerHtml = input.ToString(TagRenderMode.SelfClosing); //bd.Append(divrow.ToString(TagRenderMode.StartTag)); //bd.Append(col1.ToString(TagRenderMode.Normal)); //bd.Append(col2.ToString(TagRenderMode.Normal)); //bd.Append(divrow.ToString(TagRenderMode.EndTag)); } tb += "</tbody></table>"; bd.Append(tb); } bd.Append(divext.ToString(TagRenderMode.EndTag)); bd.Append(form.ToString(TagRenderMode.EndTag)); bd.Append(divint.ToString(TagRenderMode.EndTag)); return(MvcHtmlString.Create(bd.ToString())); }
public SupplierRepository(MealContext ContextIoC) { mealContext = ContextIoC ?? throw new ArgumentNullException($"{nameof(ContextIoC)} in SupplierRepository"); }
public MealController(MealContext context) { Context = context; }