Coverage for opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_slug_foods.py: 21%
18 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-11-25 15:48 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-11-25 15:48 +0000
1import json 1a
3from mealie.core import root_logger 1a
4from mealie.repos.repository_factory import AllRepositories 1a
5from mealie.repos.seed.resources import foods as food_resources 1a
8def fix_slug_food_names(db: AllRepositories): 1a
9 check_for_food = "dairy-products-and-dairy-substitutes"
11 food = db.ingredient_foods.get_one(check_for_food, "name")
13 logger = root_logger.get_logger("init_db")
15 if not food:
16 logger.debug(f"No food found with slug: '{check_for_food}' skipping fix")
17 return
19 all_foods = db.ingredient_foods.get_all()
21 seed_foods: dict[str, str] = json.loads(food_resources.en_US.read_text())
23 for food in all_foods:
24 if food.name in seed_foods:
25 food.name = seed_foods[food.name]
26 logger.info(f"Updating food: {food.name}")
27 db.ingredient_foods.update(food.id, food)