From f2cc8dc922cc720169518b247884bb433e5e9b71 Mon Sep 17 00:00:00 2001 From: Joey <7505194+jknndy@users.noreply.github.com> Date: Sat, 7 Feb 2026 14:47:44 -0500 Subject: [PATCH] fix: handle numeric recipeCategory from LLM/site to prevent import failure (#7026) --- mealie/services/scraper/cleaner.py | 3 +++ .../services_tests/scraper_tests/test_cleaner_parts.py | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/mealie/services/scraper/cleaner.py b/mealie/services/scraper/cleaner.py index 5b1a234ac..e0eee3ce4 100644 --- a/mealie/services/scraper/cleaner.py +++ b/mealie/services/scraper/cleaner.py @@ -533,6 +533,9 @@ def clean_categories(category: str | list) -> list[str]: # ] # return [cat["name"] for cat in category if "name" in cat] + case int() | float(): + # Handling for numeric values returned as categories + return [] case _: raise TypeError(f"Unexpected type for category: {type(category)}, {category}") diff --git a/tests/unit_tests/services_tests/scraper_tests/test_cleaner_parts.py b/tests/unit_tests/services_tests/scraper_tests/test_cleaner_parts.py index e3039569a..48019e98e 100644 --- a/tests/unit_tests/services_tests/scraper_tests/test_cleaner_parts.py +++ b/tests/unit_tests/services_tests/scraper_tests/test_cleaner_parts.py @@ -511,6 +511,11 @@ category_test_cases = ( ], expected=["Dessert", "Lunch"], ), + CleanerCase( + test_id="numeric", + input=4, + expected=[], + ), )