예제 #1
0
        public void FridgeSerializationTest()
        {
            //Getting user applicaitondata folder.
            string LocalAppDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
            string programFolder    = System.IO.Path.Combine(LocalAppDataPath, "Munchy");

            //Data File Locations
            string userFile = System.IO.Path.Combine(programFolder, "USER.json");

            string userFridgeFile = System.IO.Path.Combine(programFolder, "USER_FRIDGE.json");

            string foodDefFile    = System.IO.Path.Combine(programFolder, "FoodData.json");
            string recipeDatabase = System.IO.Path.Combine(programFolder, "Recipes.json");

            string recipeSaveFile     = System.IO.Path.Combine(programFolder, "RecipeSavesFile.json");
            string statSavePath       = System.IO.Path.Combine(programFolder, "StatSavePath.json");
            string m_ShoppingListFile = System.IO.Path.Combine(programFolder, "ShoppingList.json");


            ProgramManager currentManager = new ProgramManager(userFile, userFridgeFile, recipeDatabase, foodDefFile, recipeSaveFile, statSavePath, m_ShoppingListFile);

            FoodDef milk = new FoodDef();

            milk.USName           = "milk";
            milk.BGName           = "мляко";
            milk.USUOM            = "Grams";
            milk.BGUOM            = "Грамове";
            milk.SuggestedAmounts = new List <float> {
                10, 20, 30, 40
            };
            milk.Protein  = 10;
            milk.Sodium   = 10;
            milk.Calories = 122;
            milk.Fat      = 10;
            milk.Sugars   = 10;
            milk.Carbs    = 10;

            currentManager.UsersFridge.ClearFridge();
            Assert.IsTrue(currentManager.UsersFridge.USUsersFoods.Count == 0);
            Assert.IsTrue(currentManager.UsersFridge.BGUserFoods.Count == 0);

            currentManager.UsersFridge.AddToFridge(milk);
            Assert.IsTrue(currentManager.UsersFridge.USUsersFoods.Count == 1);
            Assert.IsTrue(currentManager.UsersFridge.USUsersFoods.Count == 1);


            Dictionary <string, FoodDef> UserFoods = currentManager.UsersFridge.UsersFridge();

            Assert.IsTrue(UserFoods.Count == currentManager.UsersFridge.USUsersFoods.Count);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].USName == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].USName);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].BGName == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].BGName);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].USUOM == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].USUOM);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].BGUOM == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].BGUOM);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].Protein == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].Protein);
            Assert.IsTrue(UserFoods[milk.USName.ToLower()].SuggestedAmounts[0] == currentManager.UsersFridge.USUsersFoods[milk.USName.ToLower()].SuggestedAmounts[0]);
        }
예제 #2
0
 //Adds names of clicked name of food item in the suggested food items to add list.d
 private void Lb_SuggestedFoodsSelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     if (Lb_SuggestFoodsToAdd.SelectedItem != null)
     {
         string  foodItemToAdd = Lb_SuggestFoodsToAdd.SelectedItem.ToString().ToLower();
         FoodDef foodToAdd     = FoodList[foodItemToAdd];
         US_IngredientInput.Text = Lb_SuggestFoodsToAdd.SelectedItem.ToString().ToLower();
         BG_IngredientInput.Text = foodToAdd.BGName.ToLower();
     }
 }
예제 #3
0
        //Handles saving the newly created FooDef
        private void Btn_SaveFoodItem_Click(object sender, RoutedEventArgs e)
        {
            FoodDef NewFoodItem = new FoodDef();

            if (!string.IsNullOrWhiteSpace(US_FoodName.Text))
            {
                NewFoodItem.USName = US_FoodName.Text.ToLower();
            }

            if (!string.IsNullOrWhiteSpace(BG_FoodName.Text))
            {
                NewFoodItem.BGName = BG_FoodName.Text.ToLower();
            }

            if (float.TryParse(tb_CalorieInput.Text, out float parsedValue))
            {
                NewFoodItem.Calories = float.Parse(tb_CalorieInput.Text);
            }

            if (float.TryParse(tb_ProteinInput.Text, out float parsedValue1))
            {
                NewFoodItem.Protein = float.Parse(tb_ProteinInput.Text);
            }

            if (float.TryParse(tb_FatInput.Text, out float parsedValue2))
            {
                NewFoodItem.Fat = float.Parse(tb_FatInput.Text);
            }

            if (float.TryParse(tb_CarbInput.Text, out float parsedValue3))
            {
                NewFoodItem.Carbs = float.Parse(tb_CarbInput.Text);
            }


            if (float.TryParse(tb_SugarInput.Text, out float parsedValue4))
            {
                NewFoodItem.Sugars = float.Parse(tb_SugarInput.Text);
            }

            if (float.TryParse(tb_SodiumInput.Text, out float parsedValue5))
            {
                NewFoodItem.Sodium = float.Parse(tb_SodiumInput.Text);
            }

            if (float.TryParse(Tb_DesityInput.Text, out float parsedValue6))
            {
                NewFoodItem.FoodDensity = float.Parse(Tb_DesityInput.Text);
            }

            if (!string.IsNullOrWhiteSpace(US_UOMInput.Text))
            {
                NewFoodItem.USUOM = US_UOMInput.Text;
            }


            if (!string.IsNullOrWhiteSpace(BG_UOMInput.Text))
            {
                NewFoodItem.BGUOM = BG_UOMInput.Text;
            }

            if (SuggestedAmounts != null && SuggestedAmounts.Count > 0)
            {
                NewFoodItem.SuggestedAmounts = SuggestedAmounts;
            }

            if (NewFoodItem.USName != null)
            {
                FoodList.Add(NewFoodItem.USName.ToLower(), NewFoodItem);
            }

            SaveFoodList();
            FoodList = GetFoodList();

            BG_UOMInput.Clear();
            US_UOMInput.Clear();
            tb_CalorieInput.Clear();
            tb_CarbInput.Clear();
            tb_FatInput.Clear();
            tb_ProteinInput.Clear();
            tb_SodiumInput.Clear();
            tb_SugarInput.Clear();
            US_FoodName.Clear();
            Lb_SuggestedAmounts.Items.Clear();
            SuggestedAmounts = new List <float>();
            BG_FoodName.Clear();
            Lb_SuggestedAmounts.Items.Clear();
        }