{ "total": 110, "passed": 110, "failed": 0, "pass_rate": 100.0, "duration": 0.01, "timestamp": "2026-06-09T00:40:53.609608", "results": [ { "class": "TestDRIsParser", "method": "test_compare_focus_nutrients", "doc": "应返回重点关注营养素列表", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_compare_with_intake_deficit", "doc": "摄入不足时应标记 deficit", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_compare_with_intake_missing", "doc": "缺失数据应标记 missing", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_compare_with_intake_sufficient", "doc": "摄入充足时应标记 sufficient", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_format_comparison_table", "doc": "对比表应包含表头和分隔线", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_get_rni_early", "doc": "孕早期 RNI 应包含关键营养素", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_get_rni_lactation", "doc": "哺乳期 RNI 钙需求应最高", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_get_rni_late", "doc": "孕晚期 RNI 蛋白质需求应最高", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_get_rni_mid", "doc": "孕中期 RNI 铁需求应增加", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_get_stages", "doc": "应返回所有阶段", "passed": true, "message": "" }, { "class": "TestDRIsParser", "method": "test_load", "doc": "load() 应返回完整结构", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_core_principles_count", "doc": "应有 6 条核心建议", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_format_for_prompt", "doc": "format_for_prompt 应返回非空字符串", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_get_recommendations_fallback", "doc": "未知阶段应返回孕中期", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_get_recommendations_late", "doc": "孕晚期推荐量应不同", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_get_recommendations_mid", "doc": "孕中期应返回正确的推荐量", "passed": true, "message": "" }, { "class": "TestDietaryGuideParser", "method": "test_load", "doc": "load() 应返回完整结构", "passed": true, "message": "" }, { "class": "TestLoadAllStandards", "method": "test_compile_to_presets", "doc": "compile_standards_to_presets 应生成缓存文件", "passed": true, "message": "" }, { "class": "TestLoadAllStandards", "method": "test_load_all", "doc": "load_all_standards 应返回所有标准", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_evaluate_above_range", "doc": "体重高于标准应返回 warning", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_evaluate_below_range", "doc": "体重低于标准应返回 warning", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_evaluate_invalid_bmi", "doc": "无效 BMI 应返回 error", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_evaluate_within_range", "doc": "体重在标准范围内应返回 ok", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_get_standard_boundary", "doc": "边界值测试", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_get_standard_low_bmi", "doc": "低体重 BMI (<18.5) 应返回低体重标准", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_get_standard_normal_bmi", "doc": "正常 BMI (18.5-24) 应返回正确标准", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_get_standard_obese", "doc": "肥胖 BMI (>=28) 应返回肥胖标准", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_get_standard_overweight", "doc": "超重 BMI (24-28) 应返回超重标准", "passed": true, "message": "" }, { "class": "TestWeightStandardParser", "method": "test_load_returns_standards", "doc": "load() 应返回结构化数据", "passed": true, "message": "" }, { "class": "TestLoadAll", "method": "test_format_all_for_prompt", "doc": "test_format_all_for_prompt", "passed": true, "message": "" }, { "class": "TestLoadAll", "method": "test_load_all_family_info", "doc": "test_load_all_family_info", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_add_daily", "doc": "test_add_daily", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_add_event", "doc": "test_add_event", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_format_for_prompt_empty", "doc": "test_format_for_prompt_empty", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_format_for_prompt_with_data", "doc": "test_format_for_prompt_with_data", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_load_all_empty", "doc": "test_load_all_empty", "passed": true, "message": "" }, { "class": "TestMemoryManager", "method": "test_load_all_with_data", "doc": "test_load_all_with_data", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_add_member", "doc": "test_add_member", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_add_member_update", "doc": "test_add_member_update", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_format_for_prompt_empty", "doc": "test_format_for_prompt_empty", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_format_for_prompt_with_data", "doc": "test_format_for_prompt_with_data", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_load_all_empty", "doc": "test_load_all_empty", "passed": true, "message": "" }, { "class": "TestPreferenceManager", "method": "test_load_all_with_data", "doc": "test_load_all_with_data", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_add_duplicate_recipe", "doc": "test_add_duplicate_recipe", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_add_recipe", "doc": "test_add_recipe", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_ensure_file_creates", "doc": "test_ensure_file_creates", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_format_for_prompt_empty", "doc": "test_format_for_prompt_empty", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_format_for_prompt_with_data", "doc": "test_format_for_prompt_with_data", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_get_names", "doc": "test_get_names", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_load_all_empty", "doc": "test_load_all_empty", "passed": true, "message": "" }, { "class": "TestRecipeManager", "method": "test_load_all_with_recipes", "doc": "test_load_all_with_recipes", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_all_types", "doc": "综合提取所有类型", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_diet_basic", "doc": "基本饮食记录提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_diet_empty", "doc": "无饮食记录应返回空列表", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_diet_multiple", "doc": "多条饮食记录提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_memory", "doc": "家庭记忆提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_preference", "doc": "偏好提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_recipe", "doc": "菜谱提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_thinking", "doc": "思考步骤提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_extract_weight", "doc": "体重提取", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_fallback_extract_diet", "doc": "fallback 关键词匹配", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_fallback_extract_thinking", "doc": "fallback 思考步骤匹配", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_get_extract_prompt", "doc": "提取提示词应包含日期", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_robust_extract_with_fallback", "doc": "综合提取:正则失败时用 fallback", "passed": true, "message": "" }, { "class": "TestDietExtractor", "method": "test_robust_extract_with_markup", "doc": "综合提取:正则优先", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_days_since_last_summary", "doc": "距离上次总结的天数", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_get_last_summary_date", "doc": "获取最近总结日期", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_is_today_done", "doc": "检查今日是否完成", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_load_empty", "doc": "空文件应返回空字典", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_mark_day_ended", "doc": "标记今日结束", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_mark_summary_done", "doc": "标记总结完成", "passed": true, "message": "" }, { "class": "TestDailyStatus", "method": "test_should_three_day_summary_false", "doc": "刚总结完不应触发三天总结", "passed": true, "message": "" }, { "class": "TestLoopState", "method": "test_all_states_defined", "doc": "所有状态应被定义", "passed": true, "message": "" }, { "class": "TestLoopState", "method": "test_state_count", "doc": "应有 9 个状态", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_default_plugins_registered", "doc": "应注册所有默认插件", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_get_briefing_empty", "doc": "初始简报应为空", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_get_errors_empty", "doc": "初始错误列表为空", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_get_thinking_keywords", "doc": "初始思考关键词", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_loop_initialization", "doc": "初始化应处于 LAUNCH 状态", "passed": true, "message": "" }, { "class": "TestPregoPalLoop", "method": "test_plugin_count", "doc": "应有 9 个默认插件", "passed": true, "message": "" }, { "class": "TestTransitions", "method": "test_already_done_flow", "doc": "今日已完成的流程", "passed": true, "message": "" }, { "class": "TestTransitions", "method": "test_full_flow", "doc": "完整流程应能到达 DONE", "passed": true, "message": "" }, { "class": "TestTransitions", "method": "test_launch_transitions", "doc": "LAUNCH 应有 2 个转移", "passed": true, "message": "" }, { "class": "TestTransitions", "method": "test_three_day_flow", "doc": "触发三天总结的流程", "passed": true, "message": "" }, { "class": "TestAnalyzePlugins", "method": "test_dri_analysis_plugin", "doc": "DRIs 分析插件", "passed": true, "message": "" }, { "class": "TestBriefPlugins", "method": "test_briefing_generator_plugin", "doc": "简报生成插件", "passed": true, "message": "" }, { "class": "TestConsolidatePlugins", "method": "test_preset_writer_plugin", "doc": "预设写入插件", "passed": true, "message": "" }, { "class": "TestFamilyQuizPlugins", "method": "test_family_recipe_quiz_plugin", "doc": "家庭菜谱检查插件", "passed": true, "message": "" }, { "class": "TestFamilyQuizPlugins", "method": "test_weight_quiz_plugin", "doc": "体重询问检查插件", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_get_plugins_by_stage", "doc": "按阶段获取插件", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_loop_context_defaults", "doc": "LoopContext 默认值", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_plugin_registry_init", "doc": "注册中心初始化应为空", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_plugin_result_custom", "doc": "PluginResult 自定义值", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_plugin_result_defaults", "doc": "PluginResult 默认值", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_register_plugin", "doc": "注册插件", "passed": true, "message": "" }, { "class": "TestPluginBase", "method": "test_unregister_plugin", "doc": "注销插件", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_briefing_generator_execution", "doc": "简报生成执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_diet_summary_execution", "doc": "饮食总结执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_dri_analysis_execution", "doc": "DRIs 分析执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_dummy_plugin_execution", "doc": "虚拟插件执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_family_memory_execution", "doc": "家庭记忆执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_family_recipe_quiz_execution", "doc": "家庭菜谱检查执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_preset_writer_execution", "doc": "预设写入执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_three_day_summary_execution", "doc": "三天总结执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_weight_check_execution", "doc": "体重检查执行", "passed": true, "message": "" }, { "class": "TestPluginExecution", "method": "test_weight_quiz_execution", "doc": "体重询问检查执行", "passed": true, "message": "" }, { "class": "TestSummarizePlugins", "method": "test_diet_summary_plugin", "doc": "饮食总结插件", "passed": true, "message": "" }, { "class": "TestSummarizePlugins", "method": "test_family_memory_plugin", "doc": "家庭记忆插件", "passed": true, "message": "" }, { "class": "TestSummarizePlugins", "method": "test_weight_check_plugin", "doc": "体重检查插件", "passed": true, "message": "" }, { "class": "TestThreeDayPlugins", "method": "test_three_day_summary_plugin", "doc": "三天总结插件", "passed": true, "message": "" } ] }