Example #1
0
        public List <DTOIngredient> ValidateIngredients(ICollection <DTOIngredient> ingredients, out string error)
        {
            var result = new List <DTOIngredient>();

            error = null;
            foreach (var ingredient in ingredients)
            {
                if (ingredient.Size.Id != this.Id)
                {
                    error += Texts.Instance.IngredientCorrespondsToAnotherPosition(ingredient.Consumable.Name) + " /n";
                    continue;
                }
                if (Ingredient.DoesIngredientExist(ingredient, result, out string existError))
                {
                    error += existError + " /n";
                    continue;
                }
                if (Ingredient.DoesConsumableExist(ingredient, result, out existError))
                {
                    error += existError + " /n";
                    continue;
                }
                result.Add(ingredient);
            }
            return(result);
        }
Example #2
0
        public void DoesIngredientExistFail_DTOList()
        {
            var ingredient1 = new DTOIngredient(1, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(1, "1", 1));
            var ingredient2 = new DTOIngredient(2, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(2, "2", 1));
            var ingredient3 = new DTOIngredient(3, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(3, "3", 1));
            var ingredients = new List <DTOIngredient>()
            {
                ingredient1, ingredient2
            };
            var result = Ingredient.DoesIngredientExist(ingredient3, ingredients, out var error);

            Assert.IsFalse(result);
            Assert.AreEqual($"Ingredient {ingredient3.Consumable.Name} cannot be found", error);
        }
Example #3
0
        public void DoesIngredientExistSuccess_DTOList()
        {
            var ingredient1 = new DTOIngredient(1, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(1, "1", 1));
            var ingredient2 = new DTOIngredient(2, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(2, "2", 1));
            var ingredient3 = new DTOIngredient(1, 1, new Size(1, "1", new Money(1), new Position(1, "1", "1")), new DTO.Consumable(3, "3", 1));
            var ingredients = new List <DTOIngredient>()
            {
                ingredient1, ingredient2
            };
            var result = Ingredient.DoesIngredientExist(ingredient3, ingredients, out var error);

            Assert.IsTrue(result);
            Assert.AreEqual($"Ingredient {ingredient3.Consumable.Name} already exists", error);
        }