From b03ea47fedc136c2d8e9cf5b2203c2dbb6730e76 Mon Sep 17 00:00:00 2001 From: iven Date: Tue, 19 May 2026 11:15:22 +0800 Subject: [PATCH] =?UTF-8?q?test(ai):=20Day=205.3=20=E2=80=94=20=E8=A1=A5?= =?UTF-8?q?=E5=85=85=205=20=E4=B8=AA=E8=80=81=20Tool=20=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - query_vitals: tool_name + schema_has_days_param - query_lab_reports: tool_name - query_appointments: tool_name - query_medications: tool_name - search_medical_knowledge: tool_name + schema_requires_query --- .../src/agent/tools/query_appointments.rs | 11 +++++++++ .../src/agent/tools/query_lab_reports.rs | 11 +++++++++ .../src/agent/tools/query_medications.rs | 11 +++++++++ crates/erp-ai/src/agent/tools/query_vitals.rs | 18 +++++++++++++++ .../agent/tools/search_medical_knowledge.rs | 23 +++++++++++++++++++ 5 files changed, 74 insertions(+) diff --git a/crates/erp-ai/src/agent/tools/query_appointments.rs b/crates/erp-ai/src/agent/tools/query_appointments.rs index 7b2c845..8b6980d 100644 --- a/crates/erp-ai/src/agent/tools/query_appointments.rs +++ b/crates/erp-ai/src/agent/tools/query_appointments.rs @@ -66,3 +66,14 @@ impl AgentTool for QueryAppointmentsTool { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn tool_name() { + let tool = QueryAppointmentsTool; + assert_eq!(tool.name(), "query_patient_appointments"); + } +} diff --git a/crates/erp-ai/src/agent/tools/query_lab_reports.rs b/crates/erp-ai/src/agent/tools/query_lab_reports.rs index e50d070..790cae1 100644 --- a/crates/erp-ai/src/agent/tools/query_lab_reports.rs +++ b/crates/erp-ai/src/agent/tools/query_lab_reports.rs @@ -83,3 +83,14 @@ impl AgentTool for QueryLabReportsTool { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn tool_name() { + let tool = QueryLabReportsTool; + assert_eq!(tool.name(), "query_patient_lab_reports"); + } +} diff --git a/crates/erp-ai/src/agent/tools/query_medications.rs b/crates/erp-ai/src/agent/tools/query_medications.rs index 9c50656..a5403ad 100644 --- a/crates/erp-ai/src/agent/tools/query_medications.rs +++ b/crates/erp-ai/src/agent/tools/query_medications.rs @@ -63,3 +63,14 @@ impl AgentTool for QueryMedicationsTool { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn tool_name() { + let tool = QueryMedicationsTool; + assert_eq!(tool.name(), "query_patient_medications"); + } +} diff --git a/crates/erp-ai/src/agent/tools/query_vitals.rs b/crates/erp-ai/src/agent/tools/query_vitals.rs index 4689267..5f43baf 100644 --- a/crates/erp-ai/src/agent/tools/query_vitals.rs +++ b/crates/erp-ai/src/agent/tools/query_vitals.rs @@ -94,3 +94,21 @@ impl AgentTool for QueryPatientVitalsTool { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn tool_name() { + let tool = QueryPatientVitalsTool; + assert_eq!(tool.name(), "query_patient_vitals"); + } + + #[test] + fn schema_has_days_param() { + let tool = QueryPatientVitalsTool; + let schema = tool.parameters_schema(); + assert!(schema["properties"]["days"].is_object()); + } +} diff --git a/crates/erp-ai/src/agent/tools/search_medical_knowledge.rs b/crates/erp-ai/src/agent/tools/search_medical_knowledge.rs index 5abaaaf..088c187 100644 --- a/crates/erp-ai/src/agent/tools/search_medical_knowledge.rs +++ b/crates/erp-ai/src/agent/tools/search_medical_knowledge.rs @@ -110,3 +110,26 @@ impl AgentTool for SearchMedicalKnowledgeTool { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn tool_name() { + let tool = SearchMedicalKnowledgeTool; + assert_eq!(tool.name(), "search_medical_knowledge"); + } + + #[test] + fn schema_requires_query() { + let tool = SearchMedicalKnowledgeTool; + let schema = tool.parameters_schema(); + assert!( + schema["required"] + .as_array() + .unwrap() + .contains(&serde_json::json!("query")) + ); + } +}