public void CantAddIngredientToNonExistingSize() { var position = new DTOPosition(1, "1", "1"); var ingredient = new DTOIngredient(1, 1, new DTOSize(2, "1", new Money(1), position), new DTOConsumable(1, "water", 1)); var ingredientListStub = new IngredientListStub(); var ingredientListValidator = new IngredientListValidator(ingredientListStub); string error = null; EventHandler<IngredientListChangedEventArgs> handler = (sender, e) => error = e.Error; ingredientListValidator.IngredientListChanged += handler; ingredientListValidator.AddIngredient(ingredient); }
public void CantRepeatConsumable_withAddMethod() { var position = new DTOPosition(1, "1", "1"); var ingredient = new DTOIngredient(3, 1, new DTOSize(1, "1", new Money(1), position), new DTOConsumable(1, "water", 1)); var ingredientListStub = new IngredientListStub(); var ingredientListValidator = new IngredientListValidator(ingredientListStub); string error = null; EventHandler<IngredientListChangedEventArgs> handler = (sender, e) => error = e.Error; ingredientListValidator.IngredientListChanged += handler; ingredientListValidator.AddIngredient(ingredient); Assert.AreEqual("Ingredient water already exists", error); }
public void AddIngredientMethod_InvokesDependencyAddIngredientMethod_IfIngredientPassesValidation() { var position = new DTOPosition(1, "1", "1"); var ingredient = new DTOIngredient(3, 1, new DTOSize(1, "1", new Money(1), position), new DTOConsumable(1, "1", 1)); var ingredientListStub = new IngredientListStub(); bool invoked = false; EventHandler<IngredientListChangedEventArgs> handler = (sender, e) => invoked = true; ingredientListStub.IngredientListChanged += handler; var ingredientListValidator = new IngredientListValidator(ingredientListStub); ingredientListValidator.AddIngredient(ingredient); Assert.IsTrue(invoked); }