mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-11-19 02:12:48 -05:00
fix: Brute parser fails if unit or food is empty (#6500)
This commit is contained in:
@@ -173,4 +173,10 @@ class ABCIngredientParser(ABC):
|
|||||||
ingredient.ingredient.food = food_match
|
ingredient.ingredient.food = food_match
|
||||||
ingredient.ingredient.unit = None
|
ingredient.ingredient.unit = None
|
||||||
|
|
||||||
|
# Make sure empty foods/units are set to None
|
||||||
|
if ingredient.ingredient.food and not ingredient.ingredient.food.name:
|
||||||
|
ingredient.ingredient.food = None
|
||||||
|
if ingredient.ingredient.unit and not ingredient.ingredient.unit.name:
|
||||||
|
ingredient.ingredient.unit = None
|
||||||
|
|
||||||
return ingredient
|
return ingredient
|
||||||
|
|||||||
@@ -434,10 +434,10 @@ def test_parser_ingredient_match(
|
|||||||
|
|
||||||
if expect_food_match:
|
if expect_food_match:
|
||||||
assert isinstance(parsed_ingredient.ingredient.food, IngredientFood)
|
assert isinstance(parsed_ingredient.ingredient.food, IngredientFood)
|
||||||
|
elif parsed_ingredient.ingredient.food and parsed_ingredient.ingredient.food.name:
|
||||||
|
assert isinstance(parsed_ingredient.ingredient.food, CreateIngredientFood)
|
||||||
else:
|
else:
|
||||||
assert parsed_ingredient.ingredient.food is None or isinstance(
|
assert parsed_ingredient.ingredient.food is None
|
||||||
parsed_ingredient.ingredient.food, CreateIngredientFood
|
|
||||||
)
|
|
||||||
|
|
||||||
if expected_unit_name:
|
if expected_unit_name:
|
||||||
assert parsed_ingredient.ingredient.unit and parsed_ingredient.ingredient.unit.name == expected_unit_name
|
assert parsed_ingredient.ingredient.unit and parsed_ingredient.ingredient.unit.name == expected_unit_name
|
||||||
@@ -446,10 +446,10 @@ def test_parser_ingredient_match(
|
|||||||
|
|
||||||
if expect_unit_match:
|
if expect_unit_match:
|
||||||
assert isinstance(parsed_ingredient.ingredient.unit, IngredientUnit)
|
assert isinstance(parsed_ingredient.ingredient.unit, IngredientUnit)
|
||||||
|
elif parsed_ingredient.ingredient.unit and parsed_ingredient.ingredient.unit.name:
|
||||||
|
assert isinstance(parsed_ingredient.ingredient.unit, CreateIngredientUnit)
|
||||||
else:
|
else:
|
||||||
assert parsed_ingredient.ingredient.unit is None or isinstance(
|
assert parsed_ingredient.ingredient.unit is None
|
||||||
parsed_ingredient.ingredient.unit, CreateIngredientUnit
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def test_openai_parser(
|
def test_openai_parser(
|
||||||
|
|||||||
Reference in New Issue
Block a user