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")) + ); + } +}