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

1import json 1a

2 

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

6 

7 

8def fix_slug_food_names(db: AllRepositories): 1a

9 check_for_food = "dairy-products-and-dairy-substitutes" 

10 

11 food = db.ingredient_foods.get_one(check_for_food, "name") 

12 

13 logger = root_logger.get_logger("init_db") 

14 

15 if not food: 

16 logger.debug(f"No food found with slug: '{check_for_food}' skipping fix") 

17 return 

18 

19 all_foods = db.ingredient_foods.get_all() 

20 

21 seed_foods: dict[str, str] = json.loads(food_resources.en_US.read_text()) 

22 

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)