From 3bddce299ad7e2e8a89be79b91ec5cf481714748 Mon Sep 17 00:00:00 2001 From: Wez Furlong Date: Sun, 12 Feb 2023 15:26:24 -0700 Subject: [PATCH] fixup tests --- crates/kumod/src/smtp_server.rs | 12 +++--------- crates/message/src/address.rs | 6 +++++- crates/message/src/lib.rs | 4 ++-- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/crates/kumod/src/smtp_server.rs b/crates/kumod/src/smtp_server.rs index b3541080..1d875ef4 100644 --- a/crates/kumod/src/smtp_server.rs +++ b/crates/kumod/src/smtp_server.rs @@ -303,14 +303,11 @@ mod test { ); assert_equal!( Command::parse("MAIL From:<>").unwrap(), - Command::Mail(EnvelopeAddress::Null) + Command::Mail(EnvelopeAddress::null_sender()) ); assert_equal!( Command::parse("MAIL From:").unwrap(), - Command::Mail(EnvelopeAddress::Mailbox { - user: "user".to_string(), - domain: "example.com".to_string() - }) + Command::Mail(EnvelopeAddress::parse("user@example.com").unwrap()) ); assert_equal!( Command::parse("rcpt to:<>").unwrap_err().to_string(), @@ -318,10 +315,7 @@ mod test { ); assert_equal!( Command::parse("rcpt TO:").unwrap(), - Command::Rcpt(EnvelopeAddress::Mailbox { - user: "user".to_string(), - domain: "example.com".to_string() - }) + Command::Rcpt(EnvelopeAddress::parse("user@example.com").unwrap()) ); } } diff --git a/crates/message/src/address.rs b/crates/message/src/address.rs index f7ccca82..c11a7cce 100644 --- a/crates/message/src/address.rs +++ b/crates/message/src/address.rs @@ -8,7 +8,7 @@ pub struct EnvelopeAddress(String); impl EnvelopeAddress { pub fn parse(text: &str) -> anyhow::Result { if text.is_empty() { - Ok(Self("".to_string())) + Ok(Self::null_sender()) } else { let fields: Vec<&str> = text.split('@').collect(); anyhow::ensure!(fields.len() == 2, "expected user@domain"); @@ -30,6 +30,10 @@ impl EnvelopeAddress { None => "", } } + + pub fn null_sender() -> Self { + Self("".to_string()) + } } impl UserData for EnvelopeAddress { diff --git a/crates/message/src/lib.rs b/crates/message/src/lib.rs index 35999410..64dc7dc7 100644 --- a/crates/message/src/lib.rs +++ b/crates/message/src/lib.rs @@ -1,5 +1,5 @@ pub mod address; pub mod message; -pub use address::EnvelopeAddress; -pub use message::Message; +pub use crate::address::EnvelopeAddress; +pub use crate::message::Message;