Newer
Older
package mi.hdm.recipes;
import mi.hdm.exceptions.InvalidNutritionTableException;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
public class NutritionTableTest {
public void shouldNotCreateInvalidNutritionTable() {
Assertions.assertThrows(InvalidNutritionTableException.class, () -> new NutritionTable(-1.0, 1.0, 1.0, 1.0, 1.0, 1.2));
}
@Test
public void shouldCreateValidNutritionTable() {
//given
double calories = 100.0;
double carbs = 23.0;
double fats = 1.0;
double protein = 9.5;
double fibers = 4.3;
double salt = 0.7;
//when
NutritionTable underTest = new NutritionTable(calories, carbs, fats, protein, fibers, salt);
//expect
Map<Nutrition, BigDecimal> expected = new HashMap<>();
expected.put(Nutrition.CALORIES, BigDecimal.valueOf(calories));
expected.put(Nutrition.CARBS, BigDecimal.valueOf(carbs));
expected.put(Nutrition.FAT, BigDecimal.valueOf(fats));
expected.put(Nutrition.PROTEINS, BigDecimal.valueOf(protein));
expected.put(Nutrition.FIBERS, BigDecimal.valueOf(fibers));
expected.put(Nutrition.SALT, BigDecimal.valueOf(salt));
Assertions.assertEquals(expected, underTest.getTable());
}

Karsch Lukas
committed
@Test
public void testEqualNutritionTable() {
NutritionTable underTestOne = ValidObjectsPool.getValidNutritionTableOne();
NutritionTable underTestTwo = ValidObjectsPool.getValidNutritionTableTwo();
NutritionTable underTestEqualToOne = new NutritionTable(100.0, 17.2, 9.4, 4.3, 2.4, 0.4);
Assertions.assertNotEquals(underTestOne, underTestTwo);
Assertions.assertEquals(underTestEqualToOne, underTestEqualToOne);

Karsch Lukas
committed
}