#![cfg(feature = "kubernetes")]

#[cfg(feature = "kubernetes")]
#[cfg(test)]
mod tests {
    
    /// Note: Testing the fluent API builders requires a Kubernetes cluster
    /// These are compile-time checks to ensure the API exists and is accessible.
    /// Full integration tests would require:
    /// - A running Kubernetes cluster
    /// - kubectl configured properly
    /// - The kubernetes feature enabled
    
    /// Verify that the fluent API compiles and the methods exist
    #[test]
    fn test_fluent_api_compiles() {
        // This test simply verifies that the fluent API types are accessible
        // and the module exports are correct. Actual functionality tests require
        // a running Kubernetes cluster.
        
        // Import to verify they're exported
        use herolib_virt::kubernetes::{
            ConfigMapBuilder, SecretBuilder, PodBuilder, ServiceBuilder,
            NamespaceBuilder, KubernetesContext,
        };
        
        // Verify that the fluent types exist and are usable
        assert!(std::mem::size_of::<ConfigMapBuilder>() > 0);
        assert!(std::mem::size_of::<SecretBuilder>() > 0);
        assert!(std::mem::size_of::<PodBuilder>() > 0);
        assert!(std::mem::size_of::<ServiceBuilder>() > 0);
        assert!(std::mem::size_of::<NamespaceBuilder>() > 0);
        // KubernetesContext is a unit struct (size 0), that's fine - just verify it exists
        let _ = KubernetesContext;
    }
}
