예제 #1
0
        public void TestInsertIngredientToIngredientDatabase()
        {
            var t   = new DatabaseAccess();
            var dbR = new DatabaseAccessRecipe();
            var dbI = new DatabaseAccessIngredient();
            var r   = new Recipe("Cranberry Swirl Bread")
            {
                id = 1
            };
            var i = new Ingredient("Cranberries", "2 cups")
            {
                recipeId = r.id
            };

            t.initializeDatabase();
            dbR.InsertRecipe(r);
            dbI.insertIngredient(i, r);
            var myRecipeBox     = dbR.queryRecipes();
            var myIngredientBox = dbI.queryAllIngredientsFromIngredientTable();
            var myRecipe        = dbR.GetFullRecipeAndFullIngredientsForRecipe(r);

            Assert.AreEqual(r.name, myRecipeBox[0].name);
            Assert.AreEqual(i.name, myIngredientBox[0].name);
            Assert.AreEqual(i.measurement, myIngredientBox[0].measurement);
            Assert.AreEqual(i.name, myRecipe.ingredients[0].name);
            Assert.AreEqual(i.measurement, myRecipe.ingredients[0].measurement);
        }
예제 #2
0
        public void TestHersheysUnsweetenedCocoa()
        {
            var t   = new DatabaseAccess();
            var dbR = new DatabaseAccessRecipe();
            var dbI = new DatabaseAccessIngredient();
            var r   = new Recipe("Chocolate Something")
            {
                id = 1
            };
            var i = new Ingredient("Hershey's Special Dark Cocoa")
            {
                recipeId      = 1,
                ingredientId  = 1,
                sellingWeight = "8 oz",
                measurement   = "1/2 cup",
                density       = 4.16m
            };

            t.initializeDatabase();
            dbR.InsertRecipe(r);
            t.insertIngredientIntoAllTables(i, r);
            dbI.getIngredientMeasuredPrice(i, r);
            var myIngInfo     = dbI.queryAllIngredientsFromIngredientTable();
            var myRecipesInfo = dbR.queryRecipes();

            Assert.AreEqual(1, myRecipesInfo.Count());
            Assert.AreEqual(.87m, myIngInfo[0].priceOfMeasuredConsumption);
        }
예제 #3
0
        public void TestIngredientTable()
        {
            var t   = new DatabaseAccess();
            var dbR = new DatabaseAccessRecipe();
            var dbI = new DatabaseAccessIngredient();
            var i   = new Ingredient("all-purpose flour", "2 1/2 cups")
            {
                recipeId = 1
            };
            var i2 = new Ingredient("butter", "1/2 cup")
            {
                recipeId = 1
            };
            var r = new Recipe("White Cake")
            {
                id = 1
            };

            t.initializeDatabase();
            dbR.InsertRecipe(r);
            dbI.insertIngredient(i, r);
            dbI.insertIngredient(i2, r);
            var recipes         = dbR.queryRecipes();
            var ingredients     = dbI.queryAllIngredientsFromIngredientTable();
            var myIngredientBox = dbI.queryAllIngredientsFromIngredientTable();

            Assert.AreEqual("all-purpose flour", ingredients[0].name);
            Assert.AreEqual("butter", ingredients[1].name);
        }
        public ActionResult DeleteRecipe(string recipeTitle)
        {
            recipeTitle = recipeTitle.Trim();
            var db      = new DatabaseAccessRecipe();
            var recipes = db.queryRecipes();

            foreach (var recipe in recipes)
            {
                if (recipe.name == recipeTitle)
                {
                    currentRecipe = recipe;
                }
                db.DeleteRecipeAndRecipeIngredients(currentRecipe);
            }
            return(Redirect("/home/RecipeBox"));
        }
예제 #5
0
        public void TestQueryListOfIngredientsDensityCostTableAdded()
        {
            var t               = new DatabaseAccess();
            var dbR             = new DatabaseAccessRecipe();
            var cocnutMacaroons = new Recipe("Coconut Macaroons")
            {
                id = 1
            };
            var i = new Ingredient("Baker's Coconut Flakes")
            {
                recipeId      = 1,
                measurement   = "1 cup",
                sellingWeight = "14 oz",
                density       = 2.5m,
                ingredientId  = 1 //2.6, .46
            };
            var i2 = new Ingredient("All Purpose Flour")
            {
                recipeId      = 1,
                measurement   = "1/2 cup",
                sellingWeight = "5 lb",
                density       = 5m,
                ingredientId  = 2 //3.65
            };
            var cocnutMcaroonsIngredients = new List <Ingredient> {
                i, i2
            };

            t.initializeDatabase();
            t.insertListOfIngredientsIntoAllTables(cocnutMcaroonsIngredients, cocnutMacaroons);
            var myIngredients = t.queryAllTablesForAllIngredients(cocnutMcaroonsIngredients);
            var myRecipes     = dbR.queryRecipes();

            Assert.AreEqual(1, myRecipes.Count());
            Assert.AreEqual(2, myIngredients.Count());
            Assert.AreEqual(2.60m, myIngredients[0].sellingPrice);
            Assert.AreEqual(.46m, myIngredients[0].priceOfMeasuredConsumption);
            Assert.AreEqual(.1857m, myIngredients[0].pricePerOunce);
            Assert.AreEqual(2.5m, myIngredients[0].density);
            Assert.AreEqual(3.65m, myIngredients[1].sellingPrice);
            Assert.AreEqual(.11m, myIngredients[1].priceOfMeasuredConsumption);
            Assert.AreEqual(.0456m, myIngredients[1].pricePerOunce);
            Assert.AreEqual(5m, myIngredients[1].density);
        }