示例#1
0
        public void Ingredient_Update_UpdateDatabaseAndLocalObject()
        {
            Ingredient testIngredient = new Ingredient("Pepper");

            testIngredient.Save();

            testIngredient.Update("Ketchup");
            Ingredient expectedIngredient = new Ingredient("Ketchup", testIngredient.GetId());

            Assert.Equal(expectedIngredient, Ingredient.Find(testIngredient.GetId()));
        }
示例#2
0
        public void Find_OneIngredientId_ReturnIngredientFromDatabase()
        {
            //Arrange
            Ingredient testIngredient = new Ingredient("Pepper");

            testIngredient.Save();

            //Act
            Ingredient foundIngredient = Ingredient.Find(testIngredient.GetId());

            //Assert
            Assert.Equal(testIngredient, foundIngredient);
        }
示例#3
0
        public void AddIngredient(Ingredient newIngredient, string amount)
        {
            SqlConnection conn = DB.Connection();

            conn.Open();
            SqlCommand cmd = new SqlCommand("INSERT INTO recipes_ingredients (recipe_id, ingredient_id, amount) VALUES (@RecipeId, @IngredientId,@Amount);", conn);

            cmd.Parameters.Add(new SqlParameter("@RecipeId", this.GetId().ToString()));
            cmd.Parameters.Add(new SqlParameter("@IngredientId", newIngredient.GetId().ToString()));
            cmd.Parameters.Add(new SqlParameter("@Amount", amount));
            cmd.ExecuteNonQuery();

            DB.CloseSqlConnection(conn);
        }
示例#4
0
        public void Save_OneIngredient_IngredientSavedWithCorrectID()
        {
            //Arrange
            Ingredient testIngredient = new Ingredient("Pepper");

            testIngredient.Save();
            Ingredient savedIngredient = Ingredient.GetAll()[0];

            //Act
            int output = savedIngredient.GetId();
            int verify = testIngredient.GetId();

            //Assert
            Assert.Equal(verify, output);
        }
示例#5
0
 public override bool Equals(System.Object randomIngredient)
 {
     if (!(randomIngredient is Ingredient))
     {
         return(false);
     }
     else
     {
         Ingredient newIngredient  = (Ingredient)randomIngredient;
         bool       idEquality     = (this.GetId() == newIngredient.GetId());
         bool       nameEquality   = (this.GetName() == newIngredient.GetName());
         bool       amountEquality = (this.GetAmount() == newIngredient.GetAmount());
         return(idEquality && nameEquality && amountEquality);
     }
 }
示例#6
0
        public void UpdateAmount(Ingredient targetIngredient, string newAmount)
        {
            SqlConnection conn = DB.Connection();

            conn.Open();

            SqlCommand cmd = new SqlCommand("UPDATE recipes_ingredients SET amount = @NewAmount WHERE recipe_id = @TargetId AND ingredient_id= @TargetIngredientId; ", conn);

            cmd.Parameters.Add(new SqlParameter("@NewAmount", newAmount));
            cmd.Parameters.Add(new SqlParameter("@TargetId", this.GetId()));
            cmd.Parameters.Add(new SqlParameter("@TargetIngredientId", targetIngredient.GetId()));
            cmd.ExecuteNonQuery();

            targetIngredient.SetAmount(newAmount);
            DB.CloseSqlConnection(conn);
        }