def test_only_Lunch(self): data = [{ "start_time": datetime(year=2019, month=1, day=1, hour=20, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=20, minute=0), "name": "Müsli", "calories": 230 }, { "start_time": datetime(year=2019, month=1, day=1, hour=20, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=20, minute=1), "name": "Milch", "calories": 97.37 }] expected = [[{ 'name': "Abendessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=20, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=20, minute=0), "name": "Müsli", "calories": 230 }, { "start_time": datetime(year=2019, month=1, day=1, hour=20, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=20, minute=1), "name": "Milch", "calories": 97.37 }] }]] translator = Translator('de', base_path='..') result = distribute_nutrition_data_to_meals(data, translator) self.check_result_vs_expected(result, expected)
def test_late_breakfast_day2(self): data = [{ "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "name": "Müsli", "calories": 268 }, { "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "name": "Milch", "calories": 109 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "name": "Pizza", "calories": 330 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=2), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=2), "name": "Keks", "calories": 63 }, { "start_time": datetime(year=2019, month=1, day=1, hour=14, minute=58), "end_time": datetime(year=2019, month=1, day=1, hour=14, minute=58), "name": "Doppelkekse", "calories": 126 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=36), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=36), "name": "Biscuits", "calories": 151 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=40), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=40), "name": "Doppelkekse", "calories": 103 }, { "start_time": datetime(year=2019, month=1, day=1, hour=16, minute=45), "end_time": datetime(year=2019, month=1, day=1, hour=16, minute=45), "name": "Keks", "calories": 63 }, { "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=58), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=58), "name": "Brot", "calories": 63 }, { "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=59), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=59), "name": "Wurst", "calories": 81.2 }] expected = [[{ 'name': "Frühstück", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "name": "Müsli", "calories": 268 }, { "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "name": "Milch", "calories": 109 }] }, { 'name': "Mittagessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "name": "Pizza", "calories": 330 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=2), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=2), "name": "Keks", "calories": 63 }] }, { 'name': "Nachmittags-Snack", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=14, minute=58), "end_time": datetime(year=2019, month=1, day=1, hour=14, minute=58), "name": "Doppelkekse", "calories": 126 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=36), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=36), "name": "Biscuits", "calories": 151 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=40), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=40), "name": "Doppelkekse", "calories": 103 }, { "start_time": datetime(year=2019, month=1, day=1, hour=16, minute=45), "end_time": datetime(year=2019, month=1, day=1, hour=16, minute=45), "name": "Keks", "calories": 63 }] }, { 'name': "Abendessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=58), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=58), "name": "Brot", "calories": 63 }, { "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=59), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=59), "name": "Wurst", "calories": 81.2 }] }]] translator = Translator('de', base_path='..') result = distribute_nutrition_data_to_meals(data, translator) self.check_result_vs_expected(result, expected)
def test_late_breakfast_day(self): data = [{ "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "name": "Müsli", "calories": 268 }, { "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "name": "Milch", "calories": 109 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "name": "Lamacun", "calories": 505.66 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=8), "name": "Keks", "calories": 126 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=24), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=24), "name": "Doppelkekse", "calories": 77 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=34), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=34), "name": "Biscuits", "calories": 114 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=52), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=52), "name": "Doppelkekse", "calories": 191 }, { "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=37), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=37), "name": "Keks", "calories": 63 }, { "start_time": datetime(year=2019, month=1, day=1, hour=23, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=23, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=23, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=23, minute=1), "name": "Wurst", "calories": 81.2 }, { "start_time": datetime(year=2019, month=1, day=2, hour=2, minute=1), "end_time": datetime(year=2019, month=1, day=2, hour=2, minute=1), "name": "Keks", "calories": 90 }] expected = [[{ 'name': "Frühstück", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=8), "name": "Müsli", "calories": 268 }, { "start_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "end_time": datetime(year=2019, month=1, day=1, hour=10, minute=9), "name": "Milch", "calories": 109 }] }, { 'name': "Mittagessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=26), "name": "Lamacun", "calories": 505.66 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=8), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=8), "name": "Keks", "calories": 126 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=24), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=24), "name": "Doppelkekse", "calories": 77 }, { "start_time": datetime(year=2019, month=1, day=1, hour=13, minute=34), "end_time": datetime(year=2019, month=1, day=1, hour=13, minute=34), "name": "Biscuits", "calories": 114 }] }, { 'name': "Nachmittags-Snack", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=52), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=52), "name": "Doppelkekse", "calories": 191 }, { "start_time": datetime(year=2019, month=1, day=1, hour=18, minute=37), "end_time": datetime(year=2019, month=1, day=1, hour=18, minute=37), "name": "Keks", "calories": 63 }] }, { 'name': "Abendessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=23, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=23, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=23, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=23, minute=1), "name": "Wurst", "calories": 81.2 }] }, { 'name': "Betthupferl", 'items': [{ "start_time": datetime(year=2019, month=1, day=2, hour=2, minute=1), "end_time": datetime(year=2019, month=1, day=2, hour=2, minute=1), "name": "Keks", "calories": 90 }] }]] translator = Translator('de', base_path='..') result = distribute_nutrition_data_to_meals(data, translator) self.check_result_vs_expected(result, expected)
def test_bunch_day(self): data = [{ "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=0), "name": "Brötchen", "calories": 250 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=1), "name": "Marmelade", "calories": 30 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=2), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=2), "name": "Orangensaft", "calories": 50 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=30), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=30), "name": "Räucherlachs", "calories": 116.3 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=31), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=31), "name": "Gouda", "calories": 90 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=32), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=32), "name": "Salat", "calories": 15 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "name": "Wurst", "calories": 81.2 }, { "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=1), "name": "Keks", "calories": 90 }] expected = [[{ 'name': "Brunch", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=0), "name": "Brötchen", "calories": 250 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=1), "name": "Marmelade", "calories": 30 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=2), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=2), "name": "Orangensaft", "calories": 50 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=30), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=30), "name": "Räucherlachs", "calories": 116.3 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=31), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=31), "name": "Gouda", "calories": 90 }, { "start_time": datetime(year=2019, month=1, day=1, hour=11, minute=32), "end_time": datetime(year=2019, month=1, day=1, hour=11, minute=32), "name": "Salat", "calories": 15 }] }, { 'name': "Nachmittags-Snack", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=15, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=15, minute=1), "name": "Keks", "calories": 90 }] }, { 'name': "Abendessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "name": "Wurst", "calories": 81.2 }] }]] translator = Translator('de', base_path='..') result = distribute_nutrition_data_to_meals(data, translator) self.check_result_vs_expected(result, expected)
def test_tree_meals_day(self): data = [{ "start_time": datetime(year=2019, month=1, day=1, hour=9, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=9, minute=0), "name": "Müsli", "calories": 230 }, { "start_time": datetime(year=2019, month=1, day=1, hour=9, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=9, minute=1), "name": "Milch", "calories": 97.37 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=30), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=30), "name": "Schnitzel", "calories": 176.3 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=31), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=31), "name": "Pommes", "calories": 237.689 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=32), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=32), "name": "Salat", "calories": 27.4567 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "name": "Wurst", "calories": 81.2 }] expected = [[{ 'name': "Frühstück", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=9, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=9, minute=0), "name": "Müsli", "calories": 230 }, { "start_time": datetime(year=2019, month=1, day=1, hour=9, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=9, minute=1), "name": "Milch", "calories": 97.37 }] }, { 'name': "Mittagessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=30), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=30), "name": "Schnitzel", "calories": 176.3 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=31), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=31), "name": "Pommes", "calories": 237.689 }, { "start_time": datetime(year=2019, month=1, day=1, hour=12, minute=32), "end_time": datetime(year=2019, month=1, day=1, hour=12, minute=32), "name": "Salat", "calories": 27.4567 }] }, { 'name': "Abendessen", 'items': [{ "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=0), "name": "Brot", "calories": 167 }, { "start_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "end_time": datetime(year=2019, month=1, day=1, hour=19, minute=1), "name": "Wurst", "calories": 81.2 }] }]] translator = Translator('de', base_path='..') result = distribute_nutrition_data_to_meals(data, translator) self.check_result_vs_expected(result, expected)
def set_nutrients(self, nutrients=[]): self.nutrient_days = distribute_nutrition_data_to_meals( nutrients, self.translator) from tests.print_helpers import print_nutrient_meal_days # print_nutrient_meal_days(self.nutrient_days) self.layout_list()