#[cfg(test)]
mod tests {
    use crate::compression_engine::{self, CompressionType};

    #[test]
    fn test_compression_engine_factory() {
        // Test getting different compression engines
        let lz4_engine = compression_engine::get_compression_engine(CompressionType::LZ4)
            .expect("Failed to get LZ4 engine");
        assert!(lz4_engine.is_supported());

        let gzip_engine = compression_engine::get_compression_engine(CompressionType::GZip)
            .expect("Failed to get GZip engine");
        assert!(gzip_engine.is_supported());

        let none_engine = compression_engine::get_compression_engine(CompressionType::None)
            .expect("Failed to get None engine");
        assert!(none_engine.is_supported());
    }

    #[test]
    fn test_default_compression_type() {
        let default = compression_engine::default_compression_type();
        // The default should be a supported compression type
        let engine = compression_engine::get_compression_engine(default)
            .expect("Failed to get default compression engine");
        assert!(engine.is_supported());
    }
}
