예제 #1
0
        public async Task <List <Recipe> > GetRecipes()
        {
            List <Recipe>           recipes = new List <Recipe>();
            List <Models.DB.Recipe> fromDB  = await this.foodDatabase.GetRecipes();

            foreach (var recipeFromDB in fromDB)
            {
                Recipe recipe = ConvertFromDb(recipeFromDB);
                recipes.Add(recipe);

                List <Models.DB.RecipeItem> items = await this.foodDatabase.GetRecipeItems(recipeFromDB.Id);

                foreach (var recipeItemDB in items)
                {
                    Models.DB.Food foodDb = await this.foodDatabase.FoodById(recipeItemDB.FoodId);

                    RecipeItem recipeItem = ConvertFromDb(recipeItemDB);
                    recipeItem.Food = FoodRepository.ConvertFromDb(foodDb);

                    recipe.Items.Add(recipeItem);
                }
            }

            return(recipes);
        }
예제 #2
0
        public void ConvertFromDbMustReturnAValidFoodObject()
        {
            var f = new FoodLog.Models.DB.Food()
            {
                BarCode      = "12",
                Calories     = 10,
                Carbs        = 11,
                Fat          = 12,
                Fiber        = 13,
                Id           = 14,
                Name         = "Name",
                Natrium      = 15,
                Portion      = 1,
                PortionType  = 1,
                Protein      = 16,
                SaturatedFat = 17,
                Sugar        = 18
            };

            var res = FoodRepository.ConvertFromDb(f);

            Assert.IsNotNull(res);
            Assert.IsInstanceOf(typeof(Food), res);
            Assert.AreEqual("12", res.BarCode);
            Assert.AreEqual(10, res.Calories);
            Assert.AreEqual(11, res.Carbs);
            Assert.AreEqual(12, res.Fat);
            Assert.AreEqual(13, res.Fiber);
            Assert.AreEqual(14, res.Id);
            Assert.AreEqual("Name", res.Name);
            Assert.AreEqual(15, res.Natrium);
            Assert.AreEqual(1, res.Portion);
            Assert.AreEqual(PortionType.Ml, res.PortionType);
            Assert.AreEqual(16, res.Protein);
            Assert.AreEqual(17, res.SaturatedFat);
            Assert.AreEqual(18, res.Sugar);
        }