From a27c7c23108a957b3abb1f5b7ac56bbcee7be89f Mon Sep 17 00:00:00 2001 From: Jean-Gabriel Gill-Couture Date: Sun, 31 Aug 2025 01:27:25 -0400 Subject: [PATCH] fix tests --- harmony/src/domain/hardware/mod.rs | 100 ----------------------------- 1 file changed, 100 deletions(-) diff --git a/harmony/src/domain/hardware/mod.rs b/harmony/src/domain/hardware/mod.rs index 52ab1f8..3a14e1a 100644 --- a/harmony/src/domain/hardware/mod.rs +++ b/harmony/src/domain/hardware/mod.rs @@ -351,103 +351,6 @@ impl std::fmt::Display for Switch { #[cfg(test)] mod tests { use super::*; - use serde::{Deserialize, Serialize}; - use std::sync::Arc; - - // Mock implementation of ManagementInterface - #[derive(Debug, Clone, Serialize, Deserialize)] - struct MockHPIlo { - ip: String, - username: String, - password: String, - firmware_version: String, - } - - impl ManagementInterface for MockHPIlo { - fn boot_to_pxe(&self) {} - - fn get_supported_protocol_names(&self) -> String { - String::new() - } - } - - // Another mock implementation - #[derive(Debug, Clone, Serialize, Deserialize)] - struct MockDellIdrac { - hostname: String, - port: u16, - api_token: String, - } - - impl ManagementInterface for MockDellIdrac { - fn boot_to_pxe(&self) {} - - fn get_supported_protocol_names(&self) -> String { - String::new() - } - } - - #[test] - fn test_serialize_physical_host_with_hp_ilo() { - // Create a PhysicalHost with HP iLO management - let host = PhysicalHost { - id: Id::empty(), - category: HostCategory::Server, - network: vec![NetworkInterface::dummy()], - storage: vec![StorageDrive::dummy()], - labels: vec![Label::new("datacenter".to_string(), "us-east".to_string())], - memory_modules: vec![], - cpus: vec![], - }; - - // Serialize to JSON - let json = serde_json::to_string(&host).expect("Failed to serialize host"); - - // Check that the serialized JSON contains the HP iLO details - assert!(json.contains("192.168.1.100")); - assert!(json.contains("admin")); - assert!(json.contains("password123")); - assert!(json.contains("firmware_version")); - assert!(json.contains("2.5.0")); - - // Parse back to verify structure (not the exact management interface) - let parsed: serde_json::Value = serde_json::from_str(&json).expect("Failed to parse JSON"); - - // Verify basic structure - assert_eq!(parsed["cpu_count"], 16); - assert_eq!(parsed["memory_size"], 64_000_000); - assert_eq!(parsed["network"][0]["name"], ""); - } - - #[test] - fn test_serialize_physical_host_with_dell_idrac() { - // Create a PhysicalHost with Dell iDRAC management - let host = PhysicalHost { - id: Id::empty(), - category: HostCategory::Server, - network: vec![NetworkInterface::dummy()], - storage: vec![StorageDrive::dummy()], - labels: vec![Label::new("env".to_string(), "production".to_string())], - memory_modules: vec![], - cpus: vec![], - }; - - // Serialize to JSON - let json = serde_json::to_string(&host).expect("Failed to serialize host"); - - // Check that the serialized JSON contains the Dell iDRAC details - assert!(json.contains("idrac-server01")); - assert!(json.contains("443")); - assert!(json.contains("abcdef123456")); - - // Parse back to verify structure - let parsed: serde_json::Value = serde_json::from_str(&json).expect("Failed to parse JSON"); - - // Verify basic structure - assert_eq!(parsed["cpu_count"], 32); - assert_eq!(parsed["memory_size"], 128_000_000); - assert_eq!(parsed["storage"][0]["path"], serde_json::Value::Null); - } #[test] fn test_different_management_implementations_produce_valid_json() { @@ -479,8 +382,5 @@ mod tests { // Both JSONs should be valid and parseable let _: serde_json::Value = serde_json::from_str(&json1).expect("Invalid JSON for host1"); let _: serde_json::Value = serde_json::from_str(&json2).expect("Invalid JSON for host2"); - - // The JSONs should be different because they contain different management interfaces - assert_ne!(json1, json2); } }