use crate::{
errors::PoolError,
tls::native::{self, TlsConnector},
};
#[derive(Copy, Clone)]
pub enum TlsMode {
Prefer,
Require,
VerifyCa,
VerifyIdentity,
}
pub fn configure(mode: TlsMode) -> Result<TlsConnector, PoolError> {
native::configure(mode)
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_prefer_tls() {
assert!(configure(TlsMode::Prefer).is_ok());
}
#[test]
fn test_require_tls() {
assert!(configure(TlsMode::Require).is_ok());
}
#[test]
fn test_verify_ca_tls() {
assert!(configure(TlsMode::VerifyCa).is_ok());
}
#[test]
fn test_verify_identity_tls() {
assert!(configure(TlsMode::VerifyIdentity).is_ok());
}
}