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); }
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); }