package mi.hdm.recipes; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.List; import java.util.Map; public class NutritionCalculatorTest { private final List<RecipeComponent> ingredients = ValidObjectsPool.getValidIngredientList(); private Map<RecipeComponent, Integer> recipeMap; private final RecipeManager recipeManager = new RecipeManager(); private final Recipe recipe = ValidObjectsPool.getValidRecipeOne(); @BeforeEach public void setUp() { recipeMap = new HashMap<>(); ingredients.forEach(ingredient -> recipeMap.put(ingredient, 100)); recipeManager.addRecipe(recipe); } @Test public void testCalculateNutritionTableFromIngredients() { //given NutritionTable expected = new NutritionTable(363.1, 42.4, 9.6, 4.3, 2.4, 1.2); //when NutritionTable actual = NutritionCalculator.calculateNutritionTable(recipeMap); //expect Assertions.assertEquals(expected, actual); } @Test public void testCalculateNutritionTableFromMealPlan() { //given NutritionTable expected = new NutritionTable(876.2, 110.6, 33.3, 15.05, 8.4, 3); //when NutritionTable actual = NutritionCalculator.calculateNutritionTableForMealPlan(ValidObjectsPool.getValidMealPlanOne().getAllRecipesFromPlan()); //expect Assertions.assertEquals(expected, actual); } }