public void UpdateIngredient(Ingredient ingredient) { var updatingIngredient = Ingredients.Find(p => p.Id == ingredient.Id); var index = Ingredients.IndexOf(updatingIngredient); Ingredients[index] = ingredient; IngredientListChanged?.Invoke(this, new IngredientListChangedEventArgs(Ingredients, null)); }
public void AddIngredientWorks() { var facade = new PositionListFacade(new PositionListStub(), new SizeListStub(), new IngredientListStub()); var ingredient = new Ingredient(1, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new Consumable(1, "water", 0)); var list = facade.AddIngredient(ingredient); Assert.AreEqual(ingredient, list[0]); }
public static bool DoesConsumableExist(DTOIngredient ingredient, ICollection <DTOIngredient> ingredients, out string error) { if (ingredients.Any(p => p.Consumable.Id == ingredient.Consumable.Id && p.Id != ingredient.Id)) { error = Texts.Instance.IngredientIsAlreadyPresent(ingredient.Consumable.Name); return(true); } error = null; return(false); }
public static bool DoesIngredientExist(DTOIngredient ingredient, ICollection <DTOIngredient> ingredients, out string error) { if (ingredients.Any(p => p.Id == ingredient.Id)) { error = Texts.Instance.IngredientAlreadyExists(ingredient.Consumable.Name); return(true); } error = Texts.Instance.IngredientCannotBeFound(ingredient.Consumable.Name); return(false); }
public void GetIngredientListWorks() { var positionList = new PositionListDataHolder(new PositionRepositoryStub()); positionList.LoadPositionList(); var size = new DTOSize(1, "size1", new Money(1), new DTOPosition(1, "1", "1")); var ingredientList = positionList.GetIngredientList(size); var expected = new DTOIngredient(1, 1, size, new DTO.Consumable(1, "water", 1)); Assert.AreEqual(expected, ingredientList[0]); Assert.AreEqual(1, ingredientList.Count); }
public void DeleteIngredientWorks() { var positionList = new PositionListDataHolder(new PositionRepositoryStub()); positionList.LoadPositionList(); var ingredient = new DTOIngredient(1, 1, new DTOSize(1, "size1", new Money(1), new DTOPosition(1, "1", "1")), new DTO.Consumable(1, "water", 1)); positionList.DeleteIngredient(ingredient); var ingredientList = positionList.GetIngredientList(ingredient.Size); Assert.AreEqual(0, ingredientList.Count); }
public void UpdateIngredientWorks() { var positionList = new PositionListDataHolder(new PositionRepositoryStub()); positionList.LoadPositionList(); var ingredient1 = new DTOIngredient(5, 1, new DTOSize(1, "size1", new Money(1), new DTOPosition(1, "1", "1")), new DTO.Consumable(1, "water", 1)); positionList.AddIngredient(ingredient1); var ingredient2 = new DTOIngredient(5, 2, new DTOSize(1, "size1", new Money(1), new DTOPosition(1, "1", "1")), new DTO.Consumable(1, "water", 1)); positionList.UpdateIngredient(ingredient2); var ingredientList = positionList.GetIngredientList(ingredient2.Size); Assert.AreEqual(ingredient2, ingredientList[1]); }
public void DeleteIngredientWorks() { var facade = CreateFacade(); facade.LoadPositionList(); var position = new Position(1, "1", "1"); facade.AddPosition(position); var size = new Size(0, "1", new Money(1), position); facade.AddSize(size); var ingredient1 = new Ingredient(1, 1, size, new Consumable(1, "1", 1)); var ingredient2 = new Ingredient(1, 1, size, new Consumable(2, "2", 1)); facade.AddIngredient(ingredient1); var ingredients = facade.DeleteIngredient(ingredient2); Assert.AreEqual(0, ingredients.Count); }
public void CantAddIngredientWithIdenticalConsumable() { var facade = CreateFacade(); facade.LoadPositionList(); var position = new Position(1, "1", "1"); facade.AddPosition(position); var size = new Size(0, "1", new Money(1), position); facade.AddSize(size); var ingredient1 = new Ingredient(1, 1, size, new Consumable(1, "1", 1)); var ingredient2 = new Ingredient(2, 1, size, new Consumable(1, "1", 1)); facade.AddIngredient(ingredient1); var ingredients = facade.AddIngredient(ingredient2); Assert.AreEqual(ingredient1, ingredients[0]); Assert.AreEqual(1, ingredients.Count); }
public void AddIngredient(DTOIngredient ingredient, ICollection <Consumable> consumables) { var domainIngredient = new Ingredient(ingredient.Id, this, consumables.First(p => p.Id == ingredient.Consumable.Id)); ingredients.Add(domainIngredient); }
public void DeleteIngredient(Ingredient ingredient) { Ingredients.Remove(ingredient); IngredientListChanged?.Invoke(this, new IngredientListChangedEventArgs(Ingredients, null)); }
public void AddIngredient(DTOIngredient ingredient) { positions.First(p => p.Id == ingredient.Size.Position.Id).Sizes.First(p => p.Id == ingredient.Size.Id) .AddIngredient(new DTOIngredient(GetNewIngredientId(ingredient.Id), ingredient.Amount, ingredient.Size, ingredient.Consumable), consumables); }
public void AddIngredient(Ingredient ingredient) { Ingredients.Add(ingredient); IngredientListChanged?.Invoke(this, new IngredientListChangedEventArgs(Ingredients, null)); }
public void DeleteIngredient(DTOIngredient ingredient) { throw new NotImplementedException(); }
public void DeleteIngredient(DTOIngredient ingredient) { positions.First(p => p.Id == ingredient.Size.Position.Id).Sizes.First(p => p.Id == ingredient.Size.Id) .DeleteIngredient(ingredient); }
public void UpdateIngredient(DTOIngredient ingredient) { ingredients.First(p => p.Id == ingredient.Id).TryUpdateIngredient(ingredient, out _); }
public void UpdateIngredient(Ingredient ingredient) { throw new NotImplementedException(); }
public void DeleteIngredient(DTOIngredient ingredient) { ingredients.Remove(ingredients.First(p => p.Id == ingredient.Id)); }
public bool TryUpdateIngredient(DTOIngredient ingredient, out string error) { this.amount = ingredient.Amount; error = null; return(true); }