Coverage report: 68%

Files Functions Classes

coverage.py v7.15.2, created at 2026-10-07 03:04 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
opt/mealie/lib/python3.12/site-packages/mealie/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/env.py include_object   0% 7 7 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/env.py run_migrations_offline   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/env.py run_migrations_online   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/env.py (no function)   89% 18 2 0   50% 4 2   82%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-02-21-19.56.24_6b0f5f32d602_initial_tables.py table_exists   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-02-21-19.56.24_6b0f5f32d602_initial_tables.py upgrade   99% 81 1 0   50% 2 1   98%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-02-21-19.56.24_6b0f5f32d602_initial_tables.py downgrade   0% 79 79 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-02-21-19.56.24_6b0f5f32d602_initial_tables.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-23-17.43.34_263dd6707191_convert_quantity_from_integer_to_float.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-23-17.43.34_263dd6707191_convert_quantity_from_integer_to_float.py upgrade   50% 2 1 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-23-17.43.34_263dd6707191_convert_quantity_from_integer_to_float.py downgrade   0% 2 2 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-23-17.43.34_263dd6707191_convert_quantity_from_integer_to_float.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-27-19.30.28_f1a2dbee5fe9_add_original_text_column_to_recipes_.py upgrade   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-27-19.30.28_f1a2dbee5fe9_add_original_text_column_to_recipes_.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-27-19.30.28_f1a2dbee5fe9_add_original_text_column_to_recipes_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-31-19.19.55_59eb59135381_add_tags_to_cookbooks.py upgrade   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-31-19.19.55_59eb59135381_add_tags_to_cookbooks.py downgrade   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-03-31-19.19.55_59eb59135381_add_tags_to_cookbooks.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-04-03-10.48.51_09dfc897ad62_add_require_all_for_cookbook_filters.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-04-03-10.48.51_09dfc897ad62_add_require_all_for_cookbook_filters.py downgrade   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-04-03-10.48.51_09dfc897ad62_add_require_all_for_cookbook_filters.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-01-11.12.06_ab0bae02578f_add_use_abbreviation_column_to_.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-01-11.12.06_ab0bae02578f_add_use_abbreviation_column_to_.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-01-11.12.06_ab0bae02578f_add_use_abbreviation_column_to_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-15-21.05.34_f30cf048c228_add_new_webhook_fields.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-15-21.05.34_f30cf048c228_add_new_webhook_fields.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-06-15-21.05.34_f30cf048c228_add_new_webhook_fields.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-12-19.05.59_188374910655_add_login_attemps_and_locked_at_field_.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-12-19.05.59_188374910655_add_login_attemps_and_locked_at_field_.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-12-19.05.59_188374910655_add_login_attemps_and_locked_at_field_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-13-17.07.07_089bfa50d0ed_add_is_ocr_recipe_column_to_recipes.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-13-17.07.07_089bfa50d0ed_add_is_ocr_recipe_column_to_recipes.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-13-17.07.07_089bfa50d0ed_add_is_ocr_recipe_column_to_recipes.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-29-13.57.40_44e8d670719d_add_extras_to_shopping_lists_list_items_.py upgrade   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-29-13.57.40_44e8d670719d_add_extras_to_shopping_lists_list_items_.py downgrade   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-08-29-13.57.40_44e8d670719d_add_extras_to_shopping_lists_list_items_.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-09-27-14.53.14_2ea7a807915c_add_recipe_timeline_events_table.py upgrade   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-09-27-14.53.14_2ea7a807915c_add_recipe_timeline_events_table.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-09-27-14.53.14_2ea7a807915c_add_recipe_timeline_events_table.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-03-13.10.24_1923519381ad_renamed_timeline_event_message_and_.py upgrade   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-03-13.10.24_1923519381ad_renamed_timeline_event_message_and_.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-03-13.10.24_1923519381ad_renamed_timeline_event_message_and_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-22-03.42.45_167eb69066ad_add_recipe_scale_to_shopping_list_item_.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-22-03.42.45_167eb69066ad_add_recipe_scale_to_shopping_list_item_.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2022-11-22-03.42.45_167eb69066ad_add_recipe_scale_to_shopping_list_item_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-01-21-16.54.44_165d943c64ee_add_related_user_to_mealplan.py upgrade   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-01-21-16.54.44_165d943c64ee_add_related_user_to_mealplan.py downgrade   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-01-21-16.54.44_165d943c64ee_add_related_user_to_mealplan.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-07-20.57.21_ff5f73b01a7a_add_missing_foreign_key_and_order_.py upgrade   100% 97 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-07-20.57.21_ff5f73b01a7a_add_missing_foreign_key_and_order_.py downgrade   0% 97 97 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-07-20.57.21_ff5f73b01a7a_add_missing_foreign_key_and_order_.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-10-21.18.32_16160bf731a0_add_more_indices_necessary_for_search.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-10-21.18.32_16160bf731a0_add_more_indices_necessary_for_search.py downgrade   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-10-21.18.32_16160bf731a0_add_more_indices_necessary_for_search.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-14-20.45.41_5ab195a474eb_add_normalized_search_properties.py do_data_migration   47% 15 8 0   17% 12 2   33%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-14-20.45.41_5ab195a474eb_add_normalized_search_properties.py upgrade   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-14-20.45.41_5ab195a474eb_add_normalized_search_properties.py downgrade   0% 12 12 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-14-20.45.41_5ab195a474eb_add_normalized_search_properties.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-21-22.03.19_b04a08da2108_added_shopping_list_label_settings.py populate_shopping_lists_multi_purpose_labels   62% 8 3 0   25% 4 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-21-22.03.19_b04a08da2108_added_shopping_list_label_settings.py upgrade   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-21-22.03.19_b04a08da2108_added_shopping_list_label_settings.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-21-22.03.19_b04a08da2108_added_shopping_list_label_settings.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-22-21.45.52_38514b39a824_add_auth_method_to_user_table.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-22-21.45.52_38514b39a824_add_auth_method_to_user_table.py upgrade   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-22-21.45.52_38514b39a824_add_auth_method_to_user_table.py downgrade   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-02-22-21.45.52_38514b39a824_add_auth_method_to_user_table.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py get_db_type   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py setup_postgres_trigrams   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py remove_postgres_trigrams   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py upgrade   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py downgrade   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-04-13-06.47.04_b3dbb554ba53_postgres_fuzzy_search.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-06-21.00.34_04ac51cbe9a4_added_group_slug.py populate_group_slugs   27% 15 11 0   25% 4 1   26%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-06-21.00.34_04ac51cbe9a4_added_group_slug.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-06-21.00.34_04ac51cbe9a4_added_group_slug.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-06-21.00.34_04ac51cbe9a4_added_group_slug.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-14-19.30.49_1825b5225403_added_recipe_note_to_shopping_list_.py upgrade   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-14-19.30.49_1825b5225403_added_recipe_note_to_shopping_list_.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-14-19.30.49_1825b5225403_added_recipe_note_to_shopping_list_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-15-16.25.07_bcfdad6b7355_remove_tool_name_and_slug_unique_.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-15-16.25.07_bcfdad6b7355_remove_tool_name_and_slug_unique_.py downgrade   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-08-15-16.25.07_bcfdad6b7355_remove_tool_name_and_slug_unique_.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-09-01-14.55.42_0341b154f79a_added_normalized_unit_and_food_names.py populate_normalized_fields   54% 13 6 0   20% 10 2   39%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-09-01-14.55.42_0341b154f79a_added_normalized_unit_and_food_names.py upgrade   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-09-01-14.55.42_0341b154f79a_added_normalized_unit_and_food_names.py downgrade   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-09-01-14.55.42_0341b154f79a_added_normalized_unit_and_food_names.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py TableMeta.composite_pk   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _get_duplicates   57% 7 3 0   50% 2 1   56%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _resolve_duplicate_food   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _resolve_duplicate_unit   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _resolve_duplicate_label   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _resolve_duplicate_foods_units_labels   38% 8 5 0   38% 8 1   38%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _remove_duplicates_from_m2m_table   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py _remove_duplicates_from_m2m_tables   100% 2 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py upgrade   100% 34 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py downgrade   0% 15 15 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-04-14.29.26_dded3119c1fe_added_unique_constraints.py (no function)   100% 44 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-19-19.22.55_ba1e4a6cfe99_added_plural_names_and_alias_tables_for_.py upgrade   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-19-19.22.55_ba1e4a6cfe99_added_plural_names_and_alias_tables_for_.py downgrade   0% 15 15 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2023-10-19-19.22.55_ba1e4a6cfe99_added_plural_names_and_alias_tables_for_.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py is_postgres   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py find_user_id_for_group   0% 15 15 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py populate_shopping_list_users   50% 10 5 0   25% 4 1   43%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py upgrade   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py downgrade   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-02-23-16.15.07_2298bb460ffd_added_user_to_shopping_list.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-10-05.08.32_09aba125b57a_add_oidc_auth_method.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-10-05.08.32_09aba125b57a_add_oidc_auth_method.py upgrade   50% 2 1 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-10-05.08.32_09aba125b57a_add_oidc_auth_method.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-10-05.08.32_09aba125b57a_add_oidc_auth_method.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py new_user_rating   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py migrate_user_favorites_to_user_ratings   80% 10 2 0   50% 4 2   71%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py migrate_group_to_user_ratings   0% 17 17 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py migrate_to_user_ratings   86% 7 1 0   50% 2 1   78%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py upgrade   82% 17 3 0   50% 2 1   79%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py downgrade   0% 12 12 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-03-18-02.28.15_d7c6efd2de42_migrate_favorites_and_ratings_to_user_.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-04-07-01.05.20_7788478a0338_add_group_recipe_actions.py upgrade   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-04-07-01.05.20_7788478a0338_add_group_recipe_actions.py downgrade   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-04-07-01.05.20_7788478a0338_add_group_recipe_actions.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-06-22-10.17.03_32d69327997b_add_staple_flag_to_foods.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-06-22-10.17.03_32d69327997b_add_staple_flag_to_foods.py upgrade   91% 11 1 0   50% 2 1   85%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-06-22-10.17.03_32d69327997b_add_staple_flag_to_foods.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-06-22-10.17.03_32d69327997b_add_staple_flag_to_foods.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py is_postgres   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py generate_id   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py dedupe_cookbook_slugs   46% 13 7 0   17% 6 1   37%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py create_household   0% 26 26 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py create_households_for_groups   78% 9 2 0   50% 2 1   73%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py _do_assignment   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py assign_households   86% 7 1 0   75% 4 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py populate_household_data   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py upgrade   100% 39 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py downgrade   0% 30 30 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-07-12-16.16.29_feecc8ffb956_add_households.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-02-21.39.49_be568e39ffdf_added_household_recipe_lock_setting_and_.py populate_defaults   75% 8 2 0   50% 2 1   70%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-02-21.39.49_be568e39ffdf_added_household_recipe_lock_setting_and_.py upgrade   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-02-21.39.49_be568e39ffdf_added_household_recipe_lock_setting_and_.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-02-21.39.49_be568e39ffdf_added_household_recipe_lock_setting_and_.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-18-14.52.55_1fe4bd37ccc8_add_households_filter_to_meal_plans.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-18-14.52.55_1fe4bd37ccc8_add_households_filter_to_meal_plans.py downgrade   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-09-18-14.52.55_1fe4bd37ccc8_add_households_filter_to_meal_plans.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-01-14.17.00_602927e1013e_add_the_rest_of_the_schema_org_.py upgrade   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-01-14.17.00_602927e1013e_add_the_rest_of_the_schema_org_.py downgrade   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-01-14.17.00_602927e1013e_add_the_rest_of_the_schema_org_.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-08-21.17.31_86054b40fd06_added_query_filter_string_to_cookbook_.py migrate_cookbooks   26% 19 14 0   12% 8 1   22%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-08-21.17.31_86054b40fd06_added_query_filter_string_to_cookbook_.py migrate_mealplan_rules   31% 16 11 0   12% 8 1   25%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-08-21.17.31_86054b40fd06_added_query_filter_string_to_cookbook_.py upgrade   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-08-21.17.31_86054b40fd06_added_query_filter_string_to_cookbook_.py downgrade   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-08-21.17.31_86054b40fd06_added_query_filter_string_to_cookbook_.py (no function)   100% 49 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-20-09.47.46_3897397b4631_add_summary_to_recipe_instructions.py upgrade   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-20-09.47.46_3897397b4631_add_summary_to_recipe_instructions.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-20-09.47.46_3897397b4631_add_summary_to_recipe_instructions.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-23-15.50.59_b1020f328e98_add_recipe_yield_quantity.py parse_recipe_yields   44% 9 5 0   50% 2 1   45%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-23-15.50.59_b1020f328e98_add_recipe_yield_quantity.py upgrade   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-23-15.50.59_b1020f328e98_add_recipe_yield_quantity.py downgrade   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-10-23-15.50.59_b1020f328e98_add_recipe_yield_quantity.py (no function)   100% 20 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py migrate_recipe_last_made_to_household   17% 6 5 0   17% 6 1   17%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py migrate_foods_on_hand_to_household   29% 7 5 0   17% 6 1   23%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py migrate_tools_on_hand_to_household   29% 7 5 0   17% 6 1   23%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py migrate_to_new_models   64% 11 4 0   100% 2 0   69%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py upgrade   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py downgrade   0% 13 13 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2024-11-20-17.30.41_b9e516e2d3b3_add_household_to_recipe_last_made_.py (no function)   100% 50 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py SqlAlchemyBase.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py RecipeModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py RecipeIngredientModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py IngredientFoodModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py IngredientFoodAliasModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py IngredientUnitModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py IngredientUnitAliasModel.normalized_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py truncate_normalized_fields   50% 14 7 0   38% 8 1   45%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py upgrade   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py downgrade   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-02-09-15.31.00_7cf3054cbbcc_remove_instructions_index.py (no function)   100% 58 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-07-11-20.17.10_d7b3ce6fa31a_empty_migration_to_fix_food_flag_data.py is_postgres   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-07-11-20.17.10_d7b3ce6fa31a_empty_migration_to_fix_food_flag_data.py upgrade   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-07-11-20.17.10_d7b3ce6fa31a_empty_migration_to_fix_food_flag_data.py downgrade   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-07-11-20.17.10_d7b3ce6fa31a_empty_migration_to_fix_food_flag_data.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-08-09-19.32.37_e6bb583aac2d_add_label_notifier_crud_bools.py upgrade   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-08-09-19.32.37_e6bb583aac2d_add_label_notifier_crud_bools.py downgrade   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/alembic/versions/2025-08-09-19.32.37_e6bb583aac2d_add_label_notifier_crud_bools.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/app.py lifespan_fn   100% 20 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/app.py start_scheduler   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/app.py api_routers   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/app.py main   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/app.py (no function)   92% 39 3 0   75% 8 2   89%
opt/mealie/lib/python3.12/site-packages/mealie/assets/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/assets/users/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/config.py determine_data_dir   60% 5 2 0   50% 4 2   56%
opt/mealie/lib/python3.12/site-packages/mealie/core/config.py get_app_dirs   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/config.py get_app_settings   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/config.py get_logging_settings   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/config.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py is_logged_in   0% 13 13 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_public_group   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py try_get_current_user   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_current_user   80% 20 4 0   50% 8 4   71%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_integration_id   60% 5 2 0   100% 0 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_admin_user   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py validate_long_live_token   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py validate_file_token   70% 10 3 0   50% 4 0   64%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py validate_recipe_token   100% 10 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_temporary_zip_path   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py get_temporary_path   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py temporary_file   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py temporary_file.func   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/dependencies/dependencies.py (no function)   100% 39 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/exceptions.py UnexpectedNone.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/exceptions.py UnexpectedNone.__str__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/exceptions.py mealie_registered_exceptions   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/exceptions.py (no function)   100% 14 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/logger/config.py _load_config   88% 8 1 0   75% 4 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/core/logger/config.py log_config   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/logger/config.py configured_logger   45% 11 6 0   25% 8 2   37%
opt/mealie/lib/python3.12/site-packages/mealie/core/logger/config.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/release_checker.py get_latest_github_release   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/release_checker.py get_latest_version   54% 13 6 0   100% 2 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/release_checker.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/root_logger.py get_logger   92% 13 1 0   75% 8 2   86%
opt/mealie/lib/python3.12/site-packages/mealie/core/root_logger.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py Hasher.hash   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py Hasher.verify   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py FakeHasher.hash   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py FakeHasher.verify   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py BcryptHasher._get_password_bytes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py BcryptHasher.hash   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py BcryptHasher.verify   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py get_hasher   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/hasher.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.__subclasshook__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.get_access_token   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.create_access_token   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.try_get_user   88% 8 1 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py AuthProvider.authenticate   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/auth_provider.py (no function)   100% 20 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/credentials_provider.py CredentialsProvider.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/credentials_provider.py CredentialsProvider.authenticate   45% 22 12 0   40% 10 4   44%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/credentials_provider.py CredentialsProvider.verify_fake_password   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/credentials_provider.py CredentialsProvider.verify_password   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/credentials_provider.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/ldap_provider.py LDAPProvider.__init__   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/ldap_provider.py LDAPProvider.authenticate   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/ldap_provider.py LDAPProvider.search_user   0% 24 24 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/ldap_provider.py LDAPProvider.get_user   0% 53 53 0   0% 20 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/ldap_provider.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/openid_provider.py OpenIDProvider.__init__   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/openid_provider.py OpenIDProvider.authenticate   0% 48 48 0   0% 24 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/openid_provider.py OpenIDProvider.required_claims   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/providers/openid_provider.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py get_auth_provider   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py create_access_token   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py create_file_token   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py create_recipe_slug_token   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py hash_password   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py url_safe_token   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/security/security.py (no function)   100% 20 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py AbstractDBProvider.db_url   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py AbstractDBProvider.db_url_public   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py SQLiteProvider.db_path   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py SQLiteProvider.db_url   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py SQLiteProvider.db_url_public   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py PostgresProvider.db_url   0% 11 11 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py PostgresProvider.db_url_public   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py db_provider_factory   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/db_providers.py (no function)   100% 32 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py AppDirectories.__init__   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py AppDirectories.IMG_DIR   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py AppDirectories.TEMP_DIR   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py AppDirectories.ensure_directories   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py FeatureDetails.__str__   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py determine_secrets   73% 11 3 0   50% 4 2   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py get_secrets_dir   60% 10 4 0   50% 4 2   57%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.validate_token_time   60% 5 2 0   50% 4 2   56%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.logger   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.DAILY_SCHEDULE_TIME_UTC   71% 14 4 0   100% 0 0   71%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.remove_trailing_slash   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.DOCS_URL   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.REDOC_URL   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.DB_URL   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.DB_URL_PUBLIC   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.SMTP_ENABLE   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.SMTP_FEATURE   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.validate_smtp   85% 13 2 0   50% 6 3   74%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.LDAP_FEATURE   71% 7 2 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.LDAP_ENABLED   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.OIDC_REQUIRES_GROUP_CLAIM   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.OIDC_FEATURE   58% 12 5 0   33% 6 2   50%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.OIDC_READY   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.OPENAI_FEATURE   67% 6 2 0   25% 4 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.OPENAI_ENABLED   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py AppSettings.WORKERS   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py app_settings_constructor   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/settings.py (no function)   100% 167 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/static.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/core/settings/themes.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/db_setup.py set_sqlite_pragma_journal_wal   40% 5 3 0   50% 2 1   43%
opt/mealie/lib/python3.12/site-packages/mealie/db/db_setup.py sql_global_init   100% 6 0 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/db_setup.py session_context   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/db_setup.py generate_session   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/db_setup.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_group_with_no_name.py _do_fix   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_group_with_no_name.py fix_group_with_no_name   0% 20 20 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_group_with_no_name.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_dangling_refs   96% 25 1 0   93% 14 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_recipe_normalized_search_properties   48% 23 12 0   62% 16 6   54%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_shopping_list_label_settings   67% 18 6 0   58% 12 3   63%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_group_slugs   30% 20 14 0   50% 8 2   36%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_normalized_unit_and_food_names   28% 29 21 0   22% 18 4   26%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py fix_migration_data   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_migration_data.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_slug_foods.py fix_slug_food_names   0% 13 13 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/fixes/fix_slug_foods.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py init_db   89% 9 1 0   50% 2 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py default_group_init   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py default_household_init   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py db_is_at_head   89% 9 1 0   50% 2 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py safe_try   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py connect   50% 6 3 0   100% 0 0   50%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py main   61% 33 13 0   36% 14 5   53%
opt/mealie/lib/python3.12/site-packages/mealie/db/init_db.py (no function)   97% 32 1 0   50% 2 1   94%
opt/mealie/lib/python3.12/site-packages/mealie/db/migration_types.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_all_models.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_base.py SqlAlchemyBase.updated_at   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_base.py SqlAlchemyBase.normalize   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_base.py BaseMixins.update   100% 4 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_base.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py _default_exclusion   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py _get_config   100% 10 0 0   75% 4 1   93%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py get_lookup_attr   75% 8 2 0   50% 2 1   70%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py handle_many_to_many   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py handle_one_to_many_list   100% 17 0 0   90% 10 1   96%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py auto_init   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py auto_init.decorator   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py auto_init.decorator.wrapper   100% 43 0 0   96% 26 1   99%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/auto_init.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/datetime.py get_utc_now   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/datetime.py get_utc_today   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/datetime.py NaiveDateTime.process_bind_param   75% 8 2 0   75% 4 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/datetime.py NaiveDateTime.process_result_value   67% 6 2 0   100% 2 0   75%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/datetime.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.generate   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.convert_value_to_guid   86% 7 1 0   83% 6 1   85%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.load_dialect_impl   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.process_bind_param   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID._uuid_value   100% 5 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.process_result_value   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py GUID.sort_key_function   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/guid.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/helpers.py get_valid_call   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/helpers.py get_valid_call.get_valid_args   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/helpers.py get_valid_call.accepts_kwargs   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/helpers.py safe_call   88% 8 1 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/_model_utils/helpers.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/exports.py GroupDataExportsModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/exports.py (no function)   95% 20 1 0   50% 2 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/group.py Group.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/group.py (no function)   85% 54 8 0   50% 2 1   84%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/preferences.py GroupPreferencesModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/preferences.py (no function)   96% 24 1 0   50% 2 1   92%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/report.py ReportEntryModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/report.py ReportModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/group/report.py (no function)   97% 36 1 0   50% 2 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/__init__.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/cookbook.py CookBook.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/cookbook.py CookBook.update   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/cookbook.py (no function)   94% 35 2 0   50% 2 1   92%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/events.py GroupEventNotifierOptionsModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/events.py GroupEventNotifierModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/events.py (no function)   96% 51 2 0   50% 2 1   94%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household.py Household.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household.py (no function)   89% 38 4 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household_to_recipe.py HouseholdToRecipe.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household_to_recipe.py update_recipe_last_made   75% 8 2 0   50% 4 2   67%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household_to_recipe.py update_recipe_rating_on_insert_or_delete   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/household_to_recipe.py (no function)   94% 31 2 0   50% 2 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/invite_tokens.py GroupInviteToken.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/invite_tokens.py (no function)   89% 19 2 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/mealplan.py GroupMealPlanRules.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/mealplan.py GroupMealPlan.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/mealplan.py (no function)   91% 45 4 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/preferences.py HouseholdPreferencesModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/preferences.py (no function)   96% 27 1 0   50% 2 1   93%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/recipe_action.py GroupRecipeAction.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/recipe_action.py (no function)   90% 21 2 0   50% 2 1   87%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py ShoppingListItemRecipeReference.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py ShoppingListItem.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py ShoppingListRecipeReference.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py ShoppingListMultiPurposeLabel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py ShoppingList.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py SessionBuffer.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py SessionBuffer.add   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py SessionBuffer.pop   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py SessionBuffer.clear   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py buffer_shopping_list_updates   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py update_shopping_lists   83% 18 3 0   100% 6 0   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/shopping_list.py (no function)   97% 115 4 0   50% 2 1   96%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/webhooks.py GroupWebhooksModel.__init__   100% 1 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/household/webhooks.py (no function)   92% 24 2 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/labels.py MultiPurposeLabel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/labels.py (no function)   87% 23 3 0   50% 2 1   84%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/__init__.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/api_extras.py api_extras   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/api_extras.py api_extras.wrapper   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/api_extras.py ExtrasGeneric.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/api_extras.py (no function)   100% 22 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/assets.py RecipeAsset.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/assets.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/category.py Category.validate_name   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/category.py Category.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/category.py (no function)   93% 28 2 0   50% 2 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/comment.py RecipeComment.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/comment.py RecipeComment.update   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/comment.py (no function)   91% 23 2 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py IngredientUnitModel.__init__   92% 12 1 0   70% 10 3   82%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py IngredientFoodModel.__init__   92% 12 1 0   75% 8 2   85%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py IngredientUnitAliasModel.__init__   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py IngredientFoodAliasModel.__init__   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py RecipeIngredientModel.__init__   75% 8 2 0   67% 6 2   71%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_unit_name   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_plural_unit_name   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_unit_abbreviation   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_unit_plural_abbreviation   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_food_name   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_food_plural_name   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_unit_alias_name   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_food_alias_name   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_ingredient_note   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py receive_ingredient_original_text   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/ingredient.py (no function)   98% 112 2 0   50% 2 1   97%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/instruction.py RecipeIngredientRefLink.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/instruction.py RecipeInstruction.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/instruction.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/note.py Note.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/note.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/nutrition.py Nutrition.__init__   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/nutrition.py (no function)   100% 20 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py RecipeModel.validate_name   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py RecipeModel.__init__   95% 19 1 0   79% 14 3   88%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py receive_name   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py receive_description   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py calculate_rating   100% 9 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe.py (no function)   96% 96 4 0   50% 2 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe_timeline.py RecipeTimelineEvent.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/recipe_timeline.py (no function)   93% 28 2 0   50% 2 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/settings.py RecipeSettings.__init__   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/settings.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/shared.py defaut_expires_at_time   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/shared.py RecipeShareTokenModel.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/shared.py (no function)   95% 21 1 0   50% 2 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/tag.py Tag.validate_name   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/tag.py Tag.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/tag.py (no function)   93% 27 2 0   50% 2 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/tool.py Tool.__init__   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/recipe/tool.py (no function)   90% 29 3 0   50% 2 1   87%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/server/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/server/task.py ServerTaskModel.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/server/task.py (no function)   95% 20 1 0   50% 2 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/password_reset.py PasswordResetModel.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/password_reset.py (no function)   92% 13 1 0   50% 2 1   87%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/user_to_recipe.py UserToRecipe.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/user_to_recipe.py update_recipe_rating   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/user_to_recipe.py update_recipe_rating_on_insert_or_delete   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/user_to_recipe.py (no function)   97% 29 1 0   50% 2 1   94%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py LongLiveToken.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User.group_slug   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User.household_slug   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User.__init__   95% 19 1 0   90% 10 1   93%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User.update   83% 12 2 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User.update_password   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py User._set_permissions   100% 11 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/db/models/users/users.py (no function)   92% 77 6 0   50% 2 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/lang/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/lang/providers.py Translator.t   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/lang/providers.py _load_factory   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/lang/providers.py local_provider   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/lang/providers.py get_all_translations   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/lang/providers.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/main.py main   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/main.py (no function)   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/cache/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/cache/cache_key.py new_key   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/cache/cache_key.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/json_provider.py JsonProvider.__init__   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/json_provider.py JsonProvider._parse_plurals   0% 10 10 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/json_provider.py JsonProvider.t   85% 20 3 0   83% 12 2   84%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/json_provider.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py ProviderFactory.fallback_file   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py ProviderFactory.supported_locales   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py ProviderFactory._load   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py ProviderFactory.release   0% 4 4 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py ProviderFactory.get   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/i18n/provider_factory.py (no function)   100% 21 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py get_format   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py sizeof_fmt   0% 8 8 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py ABCMinifier.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py ABCMinifier.get_image_sizes   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py ABCMinifier.minify   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py ABCMinifier.purge   80% 5 1 0   83% 6 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py PillowMinifier._convert_image   100% 7 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py PillowMinifier.to_jpg   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py PillowMinifier.to_webp   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py PillowMinifier.crop_center   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py PillowMinifier.minify   81% 31 6 0   50% 18 9   69%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/minify.py (no function)   100% 38 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/img/static.py (no function)   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/safehttp/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/safehttp/transport.py AsyncSafeTransport.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/safehttp/transport.py AsyncSafeTransport.handle_async_request   54% 24 11 0   50% 14 5   53%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/safehttp/transport.py AsyncSafeTransport.aclose   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/safehttp/transport.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/stats/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/stats/fs_stats.py pretty_size   67% 9 3 0   62% 8 1   65%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/stats/fs_stats.py get_dir_size   100% 11 0 0   83% 6 1   94%
opt/mealie/lib/python3.12/site-packages/mealie/pkgs/stats/fs_stats.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/_utils.py NotSet.__bool__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/_utils.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/all_repositories.py get_repositories   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/all_repositories.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py RepositoryCookbooks.create   91% 11 1 0   75% 4 1   87%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py RepositoryCookbooks.create_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py RepositoryCookbooks.update   92% 13 1 0   67% 6 2   84%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py RepositoryCookbooks.update_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py RepositoryCookbooks.patch   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_cookbooks.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py RepositoryCategories.get_empty   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py RepositoryTags.get_empty   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.ingredient_foods   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.ingredient_units   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.tools   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.comments   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.categories   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.tags   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.recipe_share_tokens   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.recipe_timeline_events   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.users   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.user_ratings   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.api_tokens   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.tokens_pw_reset   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.groups   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_preferences   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_exports   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_reports   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_report_entries   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.households   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.household_preferences   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.household_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.cookbooks   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_invite_tokens   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_recipe_actions   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.meals   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_meal_plan_rules   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_shopping_lists   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_shopping_list_item   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_shopping_list_item_references   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_shopping_list_recipe_refs   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.shopping_list_multi_purpose_labels   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_multi_purpose_labels   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.group_event_notifier   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py AllRepositories.webhooks   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_factory.py (no function)   100% 143 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_foods.py RepositoryFood._get_food   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_foods.py RepositoryFood.merge   70% 10 3 0   100% 0 0   70%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_foods.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.__init__   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.group_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.household_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.column_aliases   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._random_seed   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._log_exception   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._query   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._filter_builder   100% 6 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.multi_query   70% 10 3 0   25% 4 1   57%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._query_one   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.get_one   100% 11 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.create   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.create_many   100% 10 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.update   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.update_many   100% 13 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.patch   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.delete   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.delete_many   73% 11 3 0   100% 2 0   77%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.delete_all   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.count_all   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric._count_attribute   67% 6 2 0   50% 2 1   62%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.page_all   100% 18 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.add_pagination_to_query   96% 23 1 0   90% 10 1   94%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.add_order_attr_to_query   100% 12 0 0   90% 10 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.add_order_by_to_query   100% 26 0 0   100% 10 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py RepositoryGeneric.add_search_to_query   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py GroupRepositoryGeneric.__init__   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py HouseholdRepositoryGeneric.__init__   71% 7 2 0   50% 4 2   64%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_generic.py (no function)   100% 57 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.create   100% 15 0 0   75% 4 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.create_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.update   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.update_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.get_by_name   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py RepositoryGroup.get_by_slug_or_id   88% 8 1 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_group.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.create   100% 17 0 0   83% 6 1   96%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.create_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.update   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.update_many   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.get_by_name   67% 6 2 0   50% 4 2   60%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.get_by_slug_or_id   88% 8 1 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.statistics   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHousehold.statistics.model_count   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py RepositoryHouseholdRecipes.get_by_recipe   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_household.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_meal_plan_rules.py RepositoryMealPlanRules.get_rules   100% 7 0 0   50% 4 2   82%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_meal_plan_rules.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_meals.py RepositoryMeals.get_today   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_meals.py RepositoryMeals.get_meals_by_date_range   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_meals.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.column_aliases   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.by_user   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes._get_last_made_col_alias   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes._get_rating_col_alias   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.create   100% 11 0 0   75% 4 1   93%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes._delete_recipe   60% 15 6 0   100% 0 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.delete   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.delete_many   0% 11 11 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.update_image   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.count_uncategorized   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.count_untagged   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes._uuids_for_items   94% 16 1 0   88% 8 1   92%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.page_all   90% 29 3 0   62% 8 1   84%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.get_by_categories   100% 7 0 0   50% 4 2   82%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes._build_recipe_filter   96% 24 1 0   91% 22 2   93%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.get_random   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.get_by_slug   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.all_ids   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py RepositoryRecipes.find_suggested_recipes   81% 74 14 0   62% 34 5   75%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_recipes.py (no function)   100% 51 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_shopping_list.py RepositoryShoppingList.update   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_shopping_list.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_units.py RepositoryUnit._get_unit   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_units.py RepositoryUnit.merge   10% 10 9 0   100% 0 0   10%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_units.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.update_password   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.create   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.update   40% 5 3 0   25% 4 1   33%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.delete   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.get_by_username   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUsers.get_locked_users   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUserRatings.get_by_user   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUserRatings.get_by_recipe   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py RepositoryUserRatings.get_by_user_and_recipe   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/repository_users.py (no function)   100% 22 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/_abstract_seeder.py AbstractSeeder.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/_abstract_seeder.py AbstractSeeder.seed   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/_abstract_seeder.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/init_users.py dev_users   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/init_users.py default_user_init   67% 6 2 0   25% 4 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/init_users.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/resources/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/resources/foods/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/resources/labels/__init__.py (no function)   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/resources/units/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py MultiPurposeLabelSeeder.service   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py MultiPurposeLabelSeeder.get_file   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py MultiPurposeLabelSeeder.get_all_labels   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py MultiPurposeLabelSeeder.load_data   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py MultiPurposeLabelSeeder.seed   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientUnitsSeeder.get_file   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientUnitsSeeder.get_all_units   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientUnitsSeeder.load_data   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientUnitsSeeder.seed   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientFoodsSeeder.get_file   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientFoodsSeeder.get_label   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientFoodsSeeder.get_all_foods   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientFoodsSeeder.load_data   0% 9 9 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py IngredientFoodsSeeder.seed   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/repos/seed/seeders.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/__init__.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.t   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.repos   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.logger   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.settings   100% 3 0 0   50% 2 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.folders   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.group_id   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py _BaseController.household_id   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BasePublicGroupExploreController.group_id   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BasePublicGroupExploreController.get_public_household   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BasePublicGroupExploreController.get_explore_url_path   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BasePublicHouseholdExploreController.cross_household_repos   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.registered_exceptions   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.group_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.household_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.group   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.household   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseUserController.checks   100% 3 0 0   50% 2 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseAdminController.repos   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py BaseCrudController.publish_event   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/base_controllers.py (no function)   100% 77 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py OperationChecks.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py OperationChecks.can_manage_household   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py OperationChecks.can_manage   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py OperationChecks.can_invite   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py OperationChecks.can_organize   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/checks.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py controller   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py controller.decorator   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _cbv   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _check_classvar   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _is_classvar   60% 5 2 0   50% 4 2   56%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _init_cbv   92% 26 2 0   75% 12 3   87%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _init_cbv.new_init   71% 7 2 0   75% 4 1   73%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _register_endpoints   93% 29 2 0   80% 10 2   90%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _allocate_routes_by_method_name   0% 12 12 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py _update_cbv_route_endpoint_signature   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/controller.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.__init__   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.get_exception_message   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.handle_exception   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.create_one   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.get_one   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.update_one   100% 8 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.patch_one   75% 8 2 0   100% 2 0   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py HttpRepo.delete_one   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/mixins.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/routers.py AdminAPIRouter.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/routers.py UserAPIRouter.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/routers.py MealieCrudRoute.get_route_handler   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/routers.py MealieCrudRoute.get_route_handler.custom_route_handler   100% 8 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/_base/routers.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/__init__.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_about.py AdminAboutController.get_app_info   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_about.py AdminAboutController.get_app_statistics   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_about.py AdminAboutController.check_app_config   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_about.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController._backup_path   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.get_all   100% 8 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.create_one   57% 7 3 0   100% 0 0   57%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.get_one   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.delete_one   75% 8 2 0   100% 2 0   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.upload_one   29% 14 10 0   38% 8 1   32%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py AdminBackupController.import_one   0% 10 10 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_backups.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_debug.py AdminDebugController.debug_openai   9% 22 20 0   12% 8 1   10%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_debug.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_email.py AdminEmailController.check_email_config   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_email.py AdminEmailController.send_test_email   67% 9 3 0   100% 0 0   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_email.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py clean_images   100% 13 0 0   92% 12 1   96%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py clean_recipe_folders   100% 11 0 0   67% 6 2   88%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py tail_log   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py AdminMaintenanceController.get_maintenance_summary   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py AdminMaintenanceController.get_storage_details   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py AdminMaintenanceController.clean_images   60% 5 2 0   100% 0 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py AdminMaintenanceController.clean_temp   71% 7 2 0   100% 2 0   78%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py AdminMaintenanceController.clean_recipe_folders   60% 5 2 0   100% 0 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_maintenance.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.repo   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.create_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.update_one   100% 9 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py AdminGroupManagementRoutes.delete_one   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_groups.py (no function)   100% 28 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.repo   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.create_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.update_one   100% 9 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py AdminHouseholdManagementRoutes.delete_one   100% 7 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_households.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.create_one   100% 6 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.unlock_users   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.update_one   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.delete_one   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py AdminUserManagementRoutes.generate_token   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/admin/admin_management_users.py (no function)   100% 34 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/app/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/app/app_about.py get_app_info   100% 13 0 0   83% 6 1   95%
opt/mealie/lib/python3.12/site-packages/mealie/routes/app/app_about.py get_startup_info   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/app/app_about.py get_app_theme   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/app/app_about.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py MealieAuthToken.set_cookie   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py MealieAuthToken.respond   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py get_samesite   88% 8 1 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py get_token   61% 18 7 0   33% 6 2   54%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py oauth_login   11% 9 8 0   0% 4 2   8%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py oauth_callback   5% 22 21 0   0% 4 2   4%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py refresh_token   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py logout   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth.py (no function)   81% 53 10 0   17% 6 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache.__init__   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache._prune   0% 8 8 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache._normalize_timeout   0% 5 5 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache.get   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache.set   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache.delete   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py AuthCache.has   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/auth/auth_cache.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes._check_comment_belongs_to_user   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.update_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py RecipeCommentRoutes.delete_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/comments/__init__.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_cookbooks.py PublicCookbooksController.cross_household_cookbooks   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_cookbooks.py PublicCookbooksController.get_all   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_cookbooks.py PublicCookbooksController.get_one   0% 15 15 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_cookbooks.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_foods.py PublicFoodsController.ingredient_foods   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_foods.py PublicFoodsController.get_all   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_foods.py PublicFoodsController.get_one   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_foods.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_households.py PublicHouseholdsController.households   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_households.py PublicHouseholdsController.get_all   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_households.py PublicHouseholdsController.get_household   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_households.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicCategoriesController.categories   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicCategoriesController.get_all   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicCategoriesController.get_one   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicTagsController.tags   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicTagsController.get_all   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicTagsController.get_one   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicToolsController.tools   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicToolsController.get_all   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py PublicToolsController.get_one   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_organizers.py (no function)   100% 37 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py PublicRecipesController.cross_household_cookbooks   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py PublicRecipesController.cross_household_recipes   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py PublicRecipesController.get_all   0% 25 25 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py PublicRecipesController.suggest_recipes   0% 8 8 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py PublicRecipesController.get_recipe   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/explore/controller_public_recipes.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/__init__.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_households.py GroupHouseholdsController.get_all_households   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_households.py GroupHouseholdsController.get_one_household   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_households.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.registered_exceptions   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.get_all   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py GroupReportsController.delete_one   80% 5 1 0   100% 0 0   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_reports.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.get_logged_in_user_group   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.get_group_members   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.get_group_member   89% 9 1 0   50% 2 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.get_group_preferences   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.update_group_preferences   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py GroupSelfServiceController.get_storage   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_group_self_service.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.repo   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.create_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.update_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py MultiPurposeLabelsController.delete_one   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_labels.py (no function)   100% 31 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_migrations.py GroupMigrationController.start_data_migration   0% 11 11 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_migrations.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py DataSeederController.service   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py DataSeederController._wrap   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py DataSeederController.seed_foods   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py DataSeederController.seed_labels   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py DataSeederController.seed_units   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/groups/controller_seeder.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/handlers.py log_wrapper   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/handlers.py register_debug_handler   50% 6 3 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/routes/handlers.py register_debug_handler.validation_exception_handler   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/handlers.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/__init__.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.cookbooks   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.group_cookbooks   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.registered_exceptions   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.create_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.update_many   55% 11 5 0   38% 8 1   47%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.get_one   91% 11 1 0   75% 4 1   87%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.update_one   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py GroupCookbookController.delete_one   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_cookbooks.py (no function)   100% 37 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.repo   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.update_one   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py GroupEventsNotifierController.test_notification   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_notifications.py (no function)   100% 33 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py GroupRecipeActionController.trigger_action   100% 13 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_group_recipe_actions.py (no function)   100% 32 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.get_logged_in_user_household   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.get_household_recipe   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.get_household_members   100% 7 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.get_household_preferences   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.update_household_preferences   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.set_member_permissions   87% 15 2 0   75% 8 2   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py HouseholdSelfServiceController.get_statistics   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_household_self_service.py (no function)   100% 31 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_invitations.py GroupInvitationsController.get_invite_tokens   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_invitations.py GroupInvitationsController.create_invite_token   75% 8 2 0   50% 4 2   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_invitations.py GroupInvitationsController.email_invitation   78% 9 2 0   100% 0 0   78%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_invitations.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.registered_exceptions   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController._get_random_recipes_from_mealplan   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.get_all   100% 10 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.create_one   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.get_todays_meals   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.create_random_meal   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py GroupMealplanController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan.py (no function)   100% 41 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py GroupMealplanConfigController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_mealplan_rules.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py publish_list_item_events   100% 18 0 0   100% 18 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.create_many   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.create_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.update_many   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.delete_many   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListItemController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.create_one   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.update_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.delete_one   100% 4 0 0   50% 2 1   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.update_label_settings   100% 7 0 0   75% 4 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.add_recipe_ingredients_to_list   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.add_single_recipe_ingredients_to_list   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py ShoppingListController.remove_recipe_ingredients_from_list   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_shopping_lists.py (no function)   100% 65 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.rerun_webhooks   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.test_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py ReadWebhookController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/households/controller_webhooks.py (no function)   100% 32 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/__init__.py get_validation_text   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/__init__.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_recipe.py get_recipe_img   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_recipe.py get_recipe_timeline_event_img   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_recipe.py get_recipe_asset   60% 5 2 0   100% 0 0   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_recipe.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_user.py get_user_image   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/media/media_user.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/__init__.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.create_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.get_all_empty   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.get_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.update_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.delete_one   100% 2 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py RecipeCategoryController.get_one_by_slug   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_categories.py (no function)   100% 38 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.get_empty_tags   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.create_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.update_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.delete_recipe_tag   100% 6 0 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py TagController.get_one_by_slug   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tags.py (no function)   100% 33 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.update_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py RecipeToolController.get_one_by_slug   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/organizers/controller_tools.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/parser/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/parser/ingredient_parser.py IngredientParserController.parse_ingredient   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/parser/ingredient_parser.py IngredientParserController.parse_ingredients   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/parser/ingredient_parser.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py JSONBytes.render   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py BaseRecipeController.recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py BaseRecipeController.group_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py BaseRecipeController.group_cookbooks   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py BaseRecipeController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py BaseRecipeController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/_base.py (no function)   100% 30 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.service   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.bulk_tag_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.bulk_settings_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.bulk_categorize_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.bulk_delete_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.bulk_export_recipes   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.get_exported_data_token   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.get_exported_data   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py RecipeBulkActionsController.purge_export_data   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/bulk_actions.py (no function)   100% 31 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/comments.py RecipeCommentsController.get_recipe_comments   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/comments.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/exports.py RecipeExportController.get_recipe_formats_and_templates   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/exports.py RecipeExportController.get_recipe_zip_token   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/exports.py RecipeExportController.get_recipe_as_format   75% 4 1 0   100% 0 0   75%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/exports.py RecipeExportController.get_recipe_as_zip   36% 11 7 0   25% 4 1   33%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/exports.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.handle_exceptions   88% 16 2 0   88% 8 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.test_parse_recipe_url   71% 7 2 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.create_recipe_from_html_or_json   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.parse_recipe_url   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController._create_recipe_from_web   50% 16 8 0   33% 6 0   45%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.parse_recipe_url_bulk   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.create_recipe_from_zip   50% 4 2 0   100% 0 0   50%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.create_recipe_from_image   40% 5 3 0   50% 2 1   43%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.get_all   94% 17 1 0   67% 6 2   87%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.suggest_recipes   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.get_one   83% 6 1 0   100% 0 0   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.create_one   88% 8 1 0   50% 2 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.duplicate_one   100% 7 0 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.update_one   57% 7 3 0   0% 2 0   44%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.update_many   55% 11 5 0   38% 8 1   47%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.patch_one   100% 7 0 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.patch_many   100% 11 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.update_last_made   100% 7 0 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.delete_one   100% 7 0 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.scrape_image_url   80% 10 2 0   100% 0 0   80%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.update_recipe_image   83% 6 1 0   100% 0 0   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py RecipeController.upload_recipe_asset   89% 19 2 0   70% 10 3   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/recipe_crud_routes.py (no function)   100% 80 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/shared_routes.py get_shared_recipe   38% 13 8 0   50% 4 2   41%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/shared_routes.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.group_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.create_one   100% 8 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.update_one   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.delete_one   80% 10 2 0   50% 4 2   71%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py RecipeTimelineEventsController.update_event_image   100% 10 0 0   75% 4 1   93%
opt/mealie/lib/python3.12/site-packages/mealie/routes/recipe/timeline_events.py (no function)   100% 35 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.get_all   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.create_one   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py RecipeSharedController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/shared/__init__.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py MetaTag.__post_init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py SPAStaticFiles.get_response   62% 8 3 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py escape   0% 7 7 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py inject_meta   0% 24 24 0   0% 14 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py inject_recipe_json   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py content_with_meta   0% 26 26 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py response_404   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py serve_recipe_with_meta_public   0% 12 12 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py serve_recipe_with_meta   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py serve_shared_recipe_with_meta   0% 8 8 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py mount_spa   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/routes/spa/__init__.py (no function)   100% 37 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.merge_one   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.update_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py IngredientFoodsController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/foods.py (no function)   100% 30 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.repo   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.mixins   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.get_all   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.create_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.merge_one   83% 6 1 0   100% 0 0   83%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.get_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.update_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py IngredientUnitsController.delete_one   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/unit_and_foods/units.py (no function)   100% 30 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/_helpers.py _assert_non_admin_user_change_allowed   0% 8 8 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/_helpers.py assert_user_change_allowed   57% 7 3 0   67% 6 2   62%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/_helpers.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/api_tokens.py UserApiTokensController.create_api_token   100% 7 0 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/api_tokens.py UserApiTokensController.delete_api_token   86% 7 1 0   75% 4 1   82%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/api_tokens.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.get_logged_in_user   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.get_logged_in_user_ratings   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.get_logged_in_user_rating_for_recipe   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.get_logged_in_user_favorites   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.update_password   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py UserController.update_user   0% 6 6 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/crud.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/forgot_password.py forgot_password   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/forgot_password.py reset_password   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/forgot_password.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/images.py UserImageController.update_user_image   91% 11 1 0   50% 2 1   85%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/images.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.group_recipes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.get_recipe_or_404   91% 11 1 0   67% 6 2   82%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.get_ratings   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.get_favorites   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.set_rating   100% 10 0 0   100% 6 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.add_favorite   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py UserRatingsController.remove_favorite   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/ratings.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/registration.py RegistrationController.register_new_user   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/users/registration.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/utility_routes.py download_file   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/utility_routes.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py validate_user   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py validate_user_email   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py validate_group   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py validate_household   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py validate_recipe   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/routes/validators/validators.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py DateError.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py TimeError.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py DateTimeError.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py DurationError.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py get_numeric   100% 8 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py from_unix_seconds   62% 8 3 0   50% 6 3   57%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py _parse_timezone   0% 12 12 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py parse_date   0% 17 17 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py parse_time   0% 22 22 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py parse_datetime   40% 20 12 0   50% 10 3   43%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py parse_duration   0% 20 20 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/datetime_parse.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py UpdatedAtField   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.fix_hour_only_tz   91% 11 1 0   88% 8 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.set_tz_info   100% 7 0 0   100% 6 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.cast   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.map_to   0% 4 4 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.map_from   0% 3 3 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.merge   0% 4 4 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py MealieModel.filter_search_query   64% 11 4 0   67% 6 2   65%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py extract_uuids   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/mealie_model.py (no function)   100% 39 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/types.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/validators.py validate_locale   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/_mealie/validators.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/__init__.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/about.py (no function)   100% 57 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/backup.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/debug.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/email.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/maintenance.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/migration.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/restore.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/settings.py CustomPageBase.validate_slug   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/admin/settings.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/analytics/__init__.py (no function)   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/analytics/analytics.py (no function)   0% 14 14 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py CreateCookBook.validate_public   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py CreateCookBook.validate_name   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py CreateCookBook.validate_query_filter_string   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py ReadCookBook.validate_query_filter_string   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py ReadCookBook.validate_query_filter   57% 7 3 0   100% 0 0   57%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py ReadCookBook.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/cookbook/cookbook.py (no function)   100% 47 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/__init__.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_exports.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_migration.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_preferences.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_seeder.py SeederConfig.valid_locale   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_seeder.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_statistics.py GroupStorage.bytes   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/group/group_statistics.py (no function)   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_events.py GroupEventNotifierOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_events.py (no function)   100% 63 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_recipe_action.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListItemRecipeRefCreate.default_none_to_zero   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListItemBase.convert_extras_to_dict   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListItemCreate.validate_id   100% 7 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListItemOut.populate_missing_label   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListItemOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListMultiPurposeLabelOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListCreate.convert_extras_to_dict   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListRecipeRefOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListSummary.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListOut.default_none_to_empty_list   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py ShoppingListOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/group_shopping_list.py (no function)   100% 135 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household.py HouseholdRecipeOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household.py HouseholdInDB.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household.py HouseholdInDB.convert_group_to_name   67% 6 2 0   100% 2 0   75%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household.py (no function)   100% 55 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household_permissions.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household_preferences.py ReadHouseholdPreferences.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household_preferences.py (no function)   100% 23 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/household_statistics.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/invite_token.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/webhook.py CreateWebhook.validate_scheduled_time   100% 9 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/household/webhook.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/labels/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/labels/multi_purpose_label.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/make_dependable.py format_exception   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/make_dependable.py make_dependable   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/make_dependable.py make_dependable.init_cls_and_handle_errors   43% 7 4 0   0% 2 0   33%
opt/mealie/lib/python3.12/site-packages/mealie/schema/make_dependable.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/mapper.py mapper   100% 4 0 0   75% 4 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/schema/mapper.py cast   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/mapper.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/new_meal.py CreatePlanEntry.id_or_title   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/new_meal.py ReadPlanEntry.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/new_meal.py (no function)   100% 47 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/plan_rules.py PlanRulesDay.from_date   50% 4 2 0   100% 0 0   50%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/plan_rules.py PlanRulesCreate.validate_query_filter_string   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/plan_rules.py PlanRulesOut.validate_query_filter_string   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/plan_rules.py PlanRulesOut.validate_query_filter   57% 7 3 0   100% 0 0   57%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/plan_rules.py (no function)   100% 47 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/meal_plan/shopping_list.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/__init__.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/_base.py OpenAIBase._preprocess_response   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/_base.py OpenAIBase._process_response   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/_base.py OpenAIBase.parse_openai_response   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/_base.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/recipe.py (no function)   100% 22 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/recipe_ingredient.py OpenAIIngredient.coerce_none_float   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/openai/recipe_ingredient.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/__init__.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py create_recipe_slug   83% 6 1 0   75% 4 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py RecipeTool.convert_households_to_slugs   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py RecipeSummary.clean_strings   100% 5 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py RecipeSummary.recipe_yield_display   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py RecipeSummary.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe._get_dir   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.directory_from_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.asset_dir_from_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.image_dir_from_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.timeline_image_dir_from_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.directory   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.asset_dir   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.image_dir   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_slug   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_ingredients   100% 5 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_tags   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_categories   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_group_id   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_household_id   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_user_id   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.convert_extras_to_dict   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.validate_nutrition   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py Recipe.filter_search_query   50% 6 3 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe.py (no function)   100% 144 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_asset.py (no function)   100% 7 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_bulk_actions.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_category.py RecipeTagResponse.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_category.py (no function)   100% 37 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_comments.py RecipeCommentOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_comments.py (no function)   100% 35 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_image_types.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py display_fraction   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py UnitFoodBase.convert_empty_id_to_none   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py UnitFoodBase.convert_extras_to_dict   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py IngredientFood.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py IngredientFood.convert_households_to_slugs   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py IngredientFood.is_on_hand   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase.format_display   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase.validate_unit   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase.validate_food   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase._format_quantity_for_display   100% 15 0 0   100% 10 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase._format_unit_for_display   92% 13 1 0   90% 10 1   91%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase._format_food_for_display   83% 6 1 0   75% 4 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredientBase._format_display   100% 10 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py RecipeIngredient.validate_quantity   100% 5 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py IngredientConfidence.validate_quantity   80% 5 1 0   75% 4 1   78%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_ingredient.py (no function)   100% 136 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_notes.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_nutrition.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_scraper.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_settings.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_share_token.py defaut_expires_at_time   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_share_token.py RecipeShareTokenCreate.is_expired   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_share_token.py RecipeShareToken.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_share_token.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_step.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_suggestion.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_timeline_events.py RecipeTimelineEventOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_timeline_events.py RecipeTimelineEventOut.image_dir_from_id   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_timeline_events.py RecipeTimelineEventOut.image_dir   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_timeline_events.py (no function)   100% 54 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_tool.py RecipeToolOut.convert_households_to_slugs   33% 6 4 0   50% 2 1   38%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_tool.py RecipeToolOut.is_on_hand   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_tool.py RecipeToolOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_tool.py RecipeToolResponse.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/recipe_tool.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/recipe/request_helpers.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/reports/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/reports/reports.py ReportOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/reports/reports.py (no function)   100% 41 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/__init__.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py RequestQuery.validate_randseed   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py PaginationBase._set_next   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py PaginationBase._set_prev   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py PaginationBase.set_pagination_guides   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py PaginationBase.merge_query_parameters   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/pagination.py (no function)   100% 45 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py RelationalKeyword.parse_component   90% 21 2 0   90% 10 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py RelationalOperator.parse_component   100% 7 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilderComponent.strip_quotes_from_string   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilderComponent.__init__   69% 13 4 0   50% 10 3   61%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilderComponent.__repr__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilderComponent.validate   61% 28 11 0   67% 18 4   63%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilderComponent.as_json_model   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.__init__   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.__repr__   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._consolidate_group   75% 12 3 0   70% 10 1   73%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.get_model_and_model_attr_from_attr_string   47% 30 16 0   36% 14 5   43%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._transform_model_attr   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._get_filter_element   54% 37 17 0   50% 30 11   52%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.filter_query   91% 35 3 0   89% 18 2   91%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._break_filter_string_into_components   100% 25 0 0   100% 16 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._break_components_into_base_components   98% 52 1 0   97% 32 1   98%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder._parse_base_components_into_filter_components   100% 17 0 0   100% 12 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.as_json_model   41% 22 13 0   6% 16 1   26%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py QueryFilterBuilder.as_json_model.add_part   20% 10 8 0   50% 2 1   25%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_filter.py (no function)   100% 80 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_search.py SearchFilter._normalize_search   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_search.py SearchFilter._build_search_list   100% 9 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_search.py SearchFilter.__init__   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_search.py SearchFilter.filter_query_by_search   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/query_search.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/responses.py ErrorResponse.respond   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/responses.py SuccessResponse.respond   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/responses.py FileTokenResponse.respond   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/responses.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/response/validation.py (no function)   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/static/__init__.py (no function)   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/static/recipe_keys.py (no function)   0% 136 136 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/auth.py CredentialsRequestForm.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/auth.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/registration.py CreateUserRegistration.valid_locale   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/registration.py CreateUserRegistration.passwords_match   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/registration.py CreateUserRegistration.group_or_token   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/registration.py (no function)   100% 26 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py LongLiveTokenOut.loader_options   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserRatingSummary.convert_is_favorite   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserRatingOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserBase.convert_group_to_name   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserBase.convert_household_to_name   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserOut.is_default_user   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py UserOut.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py PrivateUser.none_to_zero   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py PrivateUser.get_directory   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py PrivateUser.is_locked   50% 4 2 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py PrivateUser.directory   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py PrivateUser.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupInDB.get_directory   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupInDB.get_export_directory   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupInDB.directory   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupInDB.exports   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupInDB.loader_options   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py GroupSummary.loader_options   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user.py (no function)   100% 166 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user_passwords.py PrivatePasswordResetToken.loader_options   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/schema/user/user_passwords.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/scripts/healthcheck.py main   91% 11 1 0   67% 6 2   82%
opt/mealie/lib/python3.12/site-packages/mealie/scripts/healthcheck.py (no function)   100% 6 0 0   50% 2 1   88%
opt/mealie/lib/python3.12/site-packages/mealie/services/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/_base_service/__init__.py BaseService.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/_base_service/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py ForeignKeyDisabler.__init__   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py ForeignKeyDisabler.__enter__   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py ForeignKeyDisabler.__exit__   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.__init__   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.is_uuid   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.is_valid_foreign_key   0% 8 8 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.convert_types   0% 15 15 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.clean_rows   0% 15 15 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.dump_schema   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.dump   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.restore   0% 25 25 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py AlchemyExporter.drop_all   0% 23 23 0   0% 14 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/alchemy_exporter.py (no function)   100% 45 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents._find_base   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents._find_data_dir_from_base   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents._find_database_from_base   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents.validate   0% 7 7 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents.schema_version   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupContents.read_tables   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupFile.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupFile.__enter__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py BackupFile.__exit__   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_file.py (no function)   100% 21 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2._sqlite   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2._postgres   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2.backup   94% 17 1 0   88% 8 1   92%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2._copy_data   0% 5 5 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py BackupV2.restore   0% 20 20 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/backups_v2/backup_v2.py (no function)   100% 16 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_senders.py Message.send   0% 25 25 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_senders.py ABCEmailSender.send   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_senders.py DefaultEmailSender.send   0% 15 15 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_senders.py (no function)   100% 35 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailTemplate.render_html   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailService.__init__   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailService.send_email   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailService.send_forgot_password   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailService.send_invitation   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py EmailService.send_test_email   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/email/email_service.py (no function)   100% 24 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py EventListenerBase.__init__   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py EventListenerBase.get_subscribers   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py EventListenerBase.publish_to_subscribers   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py EventListenerBase.ensure_session   100% 5 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py EventListenerBase.ensure_repos   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.get_subscribers   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.publish_to_subscribers   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.update_urls_with_event_data   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.merge_query_parameters   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py AppriseEventListener.is_custom_url   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py WebhookEventListener.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py WebhookEventListener.get_subscribers   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py WebhookEventListener.publish_to_subscribers   92% 13 1 0   62% 8 3   81%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py WebhookEventListener.get_scheduled_webhooks   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_listeners.py (no function)   100% 44 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventSource.__init__   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventSource.dict   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventBusService.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventBusService._get_listeners   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventBusService._publish_event   100% 3 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventBusService.dispatch   92% 12 1 0   88% 8 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py EventBusService.as_dependency   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_bus_service.py (no function)   100% 27 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_types.py EventBusMessage.from_type   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_types.py EventBusMessage.populate_body   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_types.py Event.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/event_types.py (no function)   100% 126 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py PublisherLike.publish   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py ApprisePublisher.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py ApprisePublisher.publish   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py WebhookPublisher.__init__   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py WebhookPublisher.publish   60% 5 2 0   25% 4 1   44%
opt/mealie/lib/python3.12/site-packages/mealie/services/event_bus_service/publisher.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.destination_dir   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.items   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter._post_export_hook   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.export   38% 8 5 0   25% 4 1   33%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.write_dir_to_zip_func   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py ABCExporter.write_dir_to_zip_func.func   0% 6 6 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/_abc_exporter.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/exporter.py Exporter.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/exporter.py Exporter.run   100% 10 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/exporter.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/recipe_exporter.py RecipeExporter.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/recipe_exporter.py RecipeExporter.destination_dir   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/recipe_exporter.py RecipeExporter.items   100% 2 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/recipe_exporter.py RecipeExporter._post_export_hook   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/exporter/recipe_exporter.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/group_service.py GroupService.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/group_service.py GroupService.create_group   91% 11 1 0   50% 2 1   85%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/group_service.py GroupService.calculate_group_storage   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/group_service.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/labels_service.py MultiPurposeLabelService.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/labels_service.py MultiPurposeLabelService._update_shopping_list_label_references   100% 8 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/labels_service.py MultiPurposeLabelService.create_one   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/labels_service.py MultiPurposeLabelService.create_many   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/group_services/labels_service.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService._get_recipe   100% 8 0 0   50% 2 1   90%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService.create_household   60% 10 4 0   25% 4 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService.calculate_statistics   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService.get_household_recipe   100% 7 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py HouseholdService.set_household_recipe   100% 10 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/household_service.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.__init__   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.can_merge   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.merge_items   67% 21 7 0   64% 14 5   66%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.remove_unused_recipe_references   100% 10 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.find_matching_label   100% 6 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.bulk_create_items   100% 40 0 0   96% 24 1   98%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.bulk_update_items   86% 49 7 0   89% 28 3   87%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.bulk_delete_items   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.get_shopping_list_items_from_recipe   91% 33 3 0   95% 20 1   92%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.add_recipe_ingredients_to_list   100% 15 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.remove_recipe_ingredients_from_list   97% 39 1 0   96% 24 1   97%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py ShoppingListService.create_one_list   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/household_services/shopping_lists.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.__init__   0% 23 23 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.get_zip_base_path   0% 11 11 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator._migrate   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator._create_report   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator._save_all_entries   0% 17 17 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.migrate   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.import_recipes_to_database   0% 32 32 0   0% 14 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.rewrite_alias   0% 15 15 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.clean_recipe_dictionary   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py BaseMigrator.import_image   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/_migration_base.py (no function)   100% 34 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/chowdown.py ChowdownMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/chowdown.py ChowdownMigrator.get_zip_base_path   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/chowdown.py ChowdownMigrator._migrate   0% 23 23 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/chowdown.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.load_files   0% 11 11 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.query_by_id   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.get_data   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.get_table   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py DSVParser.list_tables   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator.__init__   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._parse_units_table   0% 16 16 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._parse_foods_table   0% 15 15 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._parse_media   0% 24 24 0   0% 14 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._parse_ingredients   0% 59 59 0   0% 30 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._parse_instructions   0% 27 27 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._process_recipe_document   0% 33 33 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._process_cookbook   0% 33 33 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py CooknMigrator._migrate   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/cookn.py (no function)   100% 29 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/copymethat.py parse_recipe_tags   0% 8 8 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/copymethat.py CopyMeThatMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/copymethat.py CopyMeThatMigrator._process_recipe_document   0% 21 21 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/copymethat.py CopyMeThatMigrator._migrate   0% 25 25 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/copymethat.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/mealie_alpha.py MealieAlphaMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/mealie_alpha.py MealieAlphaMigrator.get_zip_base_path   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/mealie_alpha.py MealieAlphaMigrator._convert_to_new_schema   0% 17 17 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/mealie_alpha.py MealieAlphaMigrator._migrate   0% 29 29 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/mealie_alpha.py (no function)   100% 16 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator.parse_time   0% 14 14 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator.parse_nutrition   0% 14 14 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator.extract_rows   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator.pre_process_row   0% 11 11 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py MyRecipeBoxMigrator._migrate   0% 20 20 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/myrecipebox.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py NextcloudDir.slug   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py NextcloudDir.from_dir   0% 9 9 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py NextcloudMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py NextcloudMigrator.get_zip_base_path   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py NextcloudMigrator._migrate   0% 20 20 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/nextcloud.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/paprika.py paprika_recipes   0% 8 8 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/paprika.py PaprikaMigrator.__init__   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/paprika.py PaprikaMigrator._migrate   0% 19 19 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/paprika.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py plantoeat_recipes   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py get_value_as_string_or_none   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator._parse_recipe_nutrition_from_row   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator._get_categories_from_row   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator._get_tags_from_row   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator._process_recipe_row   0% 5 5 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py PlanToEatMigrator._migrate   0% 19 19 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/plantoeat.py (no function)   100% 21 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py clean_instructions   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py parse_recipe_div   0% 15 15 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py get_value_as_string_or_none   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py to_list   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py RecipeKeeperMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py RecipeKeeperMigrator._migrate   0% 19 19 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/recipekeeper.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py _build_ingredient_from_ingredient_data   0% 9 9 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py extract_instructions_and_ingredients   0% 11 11 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py parse_times   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py TandoorMigrator.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py TandoorMigrator._process_recipe_document   0% 11 11 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py TandoorMigrator._migrate   0% 32 32 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/tandoor.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/database_helpers.py DatabaseMigrationHelpers.__init__   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/database_helpers.py DatabaseMigrationHelpers._get_or_set_generic   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/database_helpers.py DatabaseMigrationHelpers.get_or_set_category   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/database_helpers.py DatabaseMigrationHelpers.get_or_set_tags   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/database_helpers.py (no function)   94% 17 1 0   50% 2 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_alias.py (no function)   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py MigrationReaders.json   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py MigrationReaders.yaml   0% 10 10 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py split_by_comma   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py split_by_semicolon   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py split_by_line_break   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py glob_walker   0% 7 7 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py import_image   0% 6 6 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py scrape_image   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py parse_iso8601_duration   0% 22 22 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py format_time   0% 11 11 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/migrations/utils/migration_helpers.py (no function)   100% 22 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIDataInjection.parse_value   0% 12 12 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIImageBase.get_image_url   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIImageBase.build_message   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIImageExternal.get_image_url   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAILocalImage.get_image_url   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIService.__init__   33% 9 6 0   50% 2 1   36%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIService.get_prompt   0% 15 15 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIService._get_raw_response   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py OpenAIService.get_response   0% 13 13 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/openai/openai.py (no function)   100% 35 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.__init__   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.foods_by_alias   100% 15 0 0   100% 12 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.units_by_alias   42% 19 11 0   19% 16 1   31%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.find_match   100% 6 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.find_food_match   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py DataMatcher.find_unit_match   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser._repos   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.food_fuzzy_match_threshold   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.unit_fuzzy_match_threshold   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.parse_one   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.parse   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py ABCIngredientParser.find_ingredient_match   79% 14 3 0   75% 8 2   77%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/_base.py (no function)   100% 30 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse_fraction   40% 10 6 0   50% 4 2   43%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse_amount   32% 28 19 0   17% 12 2   28%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse_amount.keep_looping   57% 7 3 0   50% 6 3   54%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse_ingredient_with_comma   73% 11 3 0   75% 4 1   73%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse_ingredient   31% 16 11 0   10% 10 1   23%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py parse   41% 49 29 0   35% 20 3   39%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/brute/process.py (no function)   100% 15 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py BruteForceParser.parse_one   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py BruteForceParser.parse   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._extract_amount   83% 6 1 0   75% 4 1   80%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._extract_quantity   67% 9 3 0   100% 2 0   73%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._extract_unit   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._extract_food   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._extract_note   73% 15 4 0   67% 6 2   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser._convert_ingredient   100% 16 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser.parse_one   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py NLPParser.parse   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py get_parser   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/ingredient_parser.py (no function)   100% 32 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._calculate_qty_conf   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._calculate_note_conf   0% 16 16 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._calculate_overall_confidence   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._calculate_confidence   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._convert_ingredient   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._get_prompt   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._chunk_messages   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser._parse   6% 18 17 0   0% 4 0   5%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser.parse_one   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py OpenAIParser.parse   25% 4 3 0   0% 2 0   17%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/openai/parser.py (no function)   100% 21 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/string_utils.py move_parens_to_end   33% 6 4 0   25% 4 1   30%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/string_utils.py check_char   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/string_utils.py convert_vulgar_fractions_to_regular_fractions   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/string_utils.py extract_quantity_from_string   9% 34 31 0   12% 8 1   10%
opt/mealie/lib/python3.12/site-packages/mealie/services/parser_services/parser_utils/string_utils.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.export_recipes   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.get_exports   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.purge_exports   61% 18 7 0   50% 8 2   58%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.set_settings   36% 11 7 0   75% 4 1   47%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.assign_tags   92% 12 1 0   83% 6 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.assign_categories   92% 12 1 0   83% 6 1   89%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py RecipeBulkActionsService.delete_recipes   100% 6 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_bulk_service.py (no function)   100% 19 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py gather_with_concurrency   0% 6 6 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py gather_with_concurrency.sem_coro   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py largest_content_len   0% 14 14 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py largest_content_len.do   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py RecipeDataService.__init__   100% 9 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py RecipeDataService.delete_all_data   0% 4 4 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py RecipeDataService.write_image   79% 14 3 0   67% 6 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py RecipeDataService.scrape_image   55% 33 15 0   22% 18 2   43%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_data_service.py (no function)   100% 22 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeServiceBase.__init__   83% 12 2 0   50% 4 2   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._get_recipe   100% 4 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.can_delete   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.can_update   23% 13 10 0   17% 12 2   20%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.can_lock_unlock   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.check_assets   80% 15 3 0   80% 10 2   80%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.delete_assets   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._recipe_creation_factory   85% 13 2 0   62% 8 1   76%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.get_one   100% 8 0 0   100% 4 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.create_one   80% 15 3 0   50% 8 4   70%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._transform_user_id   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._transform_category_or_tag   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._process_recipe_data   0% 17 17 0   0% 14 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.clean_recipe_dict   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.create_from_zip   25% 20 15 0   0% 12 0   16%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.create_from_images   0% 14 14 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.duplicate_one   90% 21 2 0   100% 0 0   90%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.duplicate_one.replace_recipe_step   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.duplicate_one.copy_recipe_ingredient   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService._pre_update_check   67% 9 3 0   50% 6 3   60%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.update_one   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.update_recipe_image   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.patch_one   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.update_last_made   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.delete_one   83% 6 1 0   50% 2 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py RecipeService.render_template   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py OpenAIRecipeService._convert_recipe   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py OpenAIRecipeService.build_recipe_from_images   0% 19 19 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/recipe_service.py (no function)   100% 63 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService.__init__   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService.templates   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService.__check_temp   0% 2 2 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService.template_type   62% 8 3 0   67% 6 2   64%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService.render   17% 6 5 0   0% 4 0   10%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService._render_json   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py TemplateService._render_zip   0% 10 10 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/recipe/template_service.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/__init__.py (no function)   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/runner.py repeat_every   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/runner.py repeat_every.decorator   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/runner.py repeat_every.decorator.wrapped   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/runner.py repeat_every.decorator.wrapped.loop   53% 15 7 0   30% 10 3   44%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/runner.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduled_func.py (no function)   0% 13 13 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry._register   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.register_daily   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.remove_daily   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.register_hourly   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.remove_hourly   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.register_minutely   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.remove_minutely   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py SchedulerRegistry.print_jobs   100% 6 0 0   100% 6 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_registry.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py SchedulerService.start   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py schedule_daily   82% 17 3 0   50% 2 1   79%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py _scheduled_task_wrapper   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py run_daily   0% 3 3 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py run_hourly   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py run_minutely   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/scheduler_service.py (no function)   100% 23 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/__init__.py (no function)   100% 10 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/create_timeline_events.py _create_mealplan_timeline_events_for_household   0% 38 38 0   0% 18 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/create_timeline_events.py _create_mealplan_timeline_events_for_group   0% 5 5 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/create_timeline_events.py create_mealplan_timeline_events   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/create_timeline_events.py (no function)   100% 18 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/delete_old_checked_shopping_list_items.py _create_publish_event   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/delete_old_checked_shopping_list_items.py _create_publish_event.publish_event   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/delete_old_checked_shopping_list_items.py _trim_list_items   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/delete_old_checked_shopping_list_items.py delete_old_checked_list_items   0% 14 14 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/delete_old_checked_shopping_list_items.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/post_webhooks.py post_group_webhooks   100% 21 0 0   100% 8 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/post_webhooks.py post_test_webhook   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/post_webhooks.py (no function)   100% 12 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_expired_share_tokens.py purge_expired_tokens   0% 7 7 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_expired_share_tokens.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_group_exports.py purge_group_data_exports   0% 13 13 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_group_exports.py purge_excess_files   0% 8 8 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_group_exports.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_password_reset.py purge_password_reset_tokens   0% 8 8 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_password_reset.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_registration.py purge_group_registration   0% 8 8 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/purge_registration.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/reset_locked_users.py locked_user_reset   100% 9 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scheduler/tasks/reset_locked_users.py (no function)   100% 5 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean   0% 18 18 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_string   0% 17 17 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_image   0% 16 16 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_instructions   0% 24 24 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py _sanitize_instruction_text   0% 12 12 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_ingredients   0% 16 16 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_int   0% 11 11 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_notes   0% 15 15 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py _get_servings_options   0% 4 4 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py _is_serving_string   0% 5 5 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_yield   0% 18 18 0   0% 12 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_time   0% 25 25 0   0% 16 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py parse_duration   0% 8 8 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py pretty_print_timedelta   0% 16 16 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_categories   0% 13 13 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_tags   0% 9 9 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py clean_nutrition   0% 18 18 0   0% 18 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/cleaner.py (no function)   100% 43 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService.__init__   100% 6 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService.get_report_id   100% 3 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService._add_error_entry   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService._save_all_entries   88% 17 2 0   75% 12 3   83%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService.scrape   41% 22 13 0   40% 10 2   41%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py RecipeBulkScraperService.scrape._do   89% 9 1 0   100% 0 0   89%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_bulk_scraper.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_scraper.py RecipeScraper.__init__   100% 5 0 0   50% 2 1   86%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_scraper.py RecipeScraper.scrape   44% 18 10 0   75% 4 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/recipe_scraper.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraped_extras.py ScrapedExtras.__init__   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraped_extras.py ScrapedExtras.set_tags   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraped_extras.py ScrapedExtras.use_tags   0% 17 17 0   0% 8 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraped_extras.py (no function)   100% 14 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper.py create_from_html   32% 28 19 0   42% 12 1   35%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper.py (no function)   100% 17 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py safe_scrape_html   76% 29 7 0   58% 12 5   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py ABCScraperStrategy.__init__   100% 4 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py ABCScraperStrategy.get_html   100% 1 0 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py ABCScraperStrategy.parse   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.ld_json_to_html   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.get_html   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.clean_scraper   0% 7 7 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.clean_scraper.try_get_default   0% 14 14 0   0% 6 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.clean_scraper.get_instructions   0% 8 8 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.scrape_url   30% 20 14 0   0% 2 0   27%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperPackage.parse   75% 4 1 0   50% 2 1   67%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenAI.extract_json_ld_data_from_html   0% 9 9 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenAI.find_image   0% 20 20 0   0% 10 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenAI.format_html_to_text   0% 13 13 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenAI.get_html   20% 15 12 0   25% 4 1   21%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenGraph.get_html   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenGraph.get_recipe_fields   89% 9 1 0   100% 0 0   89%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenGraph.get_recipe_fields.og_field   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenGraph.get_recipe_fields.og_fields   0% 1 1 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py RecipeScraperOpenGraph.parse   80% 5 1 0   50% 2 1   71%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/scraper_strategies.py (no function)   100% 47 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py get_user_agents_manager   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py UserAgentsManager.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py UserAgentsManager.get_scrape_headers   67% 3 1 0   50% 2 1   60%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py UserAgentsManager.user_agents   100% 3 0 0   100% 2 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py UserAgentsManager._fetch_user_agents   75% 12 3 0   75% 4 1   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/scraper/user_agents_manager.py (no function)   100% 11 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/seeder_service.py SeederService.__init__   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/seeder_service.py SeederService.seed_foods   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/seeder_service.py SeederService.seed_labels   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/seeder_service.py SeederService.seed_units   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/seeder/seeder_service.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/__init__.py (no function)   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py _base_or   50% 4 2 0   50% 2 1   50%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py recipe_url   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py shopping_list_url   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py tag_url   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py category_url   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py tool_url   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/urls/url_constructors.py (no function)   100% 8 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/__init__.py (no function)   100% 0 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/password_reset_service.py PasswordResetService.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/password_reset_service.py PasswordResetService.generate_reset_token   80% 10 2 0   75% 4 1   79%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/password_reset_service.py PasswordResetService.send_reset_email   70% 10 3 0   100% 2 0   75%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/password_reset_service.py PasswordResetService.reset_password   0% 11 11 0   0% 4 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/password_reset_service.py (no function)   100% 13 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py RegistrationService.__init__   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py RegistrationService._create_new_user   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py RegistrationService._register_new_group   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py RegistrationService._fetch_or_register_new_household   0% 9 9 0   0% 2 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py RegistrationService.register_user   0% 37 37 0   0% 20 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/registration_service.py (no function)   100% 25 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py UserService.__init__   100% 2 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py UserService.get_locked_users   100% 1 0 0   100% 0 0   100%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py UserService.reset_locked_users   57% 7 3 0   25% 4 1   45%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py UserService.lock_user   0% 2 2 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py UserService.unlock_user   0% 3 3 0   100% 0 0   0%
opt/mealie/lib/python3.12/site-packages/mealie/services/user_services/user_service.py (no function)   100% 10 0 0   100% 0 0   100%
Total     74% 17510 4633 0   43% 3476 482   68%

No items found using the specified filter.