From b737f101fa5b2049896168a1c50648923bf22c03 Mon Sep 17 00:00:00 2001 From: Cameron Garnham Date: Tue, 25 Apr 2023 22:23:01 +0200 Subject: [PATCH] dev: fix clippy warnings for: src/mailer.rs --- src/app.rs | 5 ++--- src/common.rs | 6 +++--- src/mailer.rs | 18 +++++++++++++----- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/src/app.rs b/src/app.rs index 701aa64c..aabd6138 100644 --- a/src/app.rs +++ b/src/app.rs @@ -12,10 +12,9 @@ use crate::cache::image::manager::ImageCacheService; use crate::common::AppData; use crate::config::Configuration; use crate::databases::database; -use crate::mailer::MailerService; -use crate::routes; use crate::tracker::service::Service; use crate::tracker::statistics_importer::StatisticsImporter; +use crate::{mailer, routes}; pub struct Running { pub api_server: Server, @@ -48,7 +47,7 @@ pub async fn run(configuration: Configuration) -> Running { let tracker_service = Arc::new(Service::new(cfg.clone(), database.clone()).await); let tracker_statistics_importer = Arc::new(StatisticsImporter::new(cfg.clone(), tracker_service.clone(), database.clone()).await); - let mailer_service = Arc::new(MailerService::new(cfg.clone()).await); + let mailer_service = Arc::new(mailer::Service::new(cfg.clone()).await); let image_cache_service = Arc::new(ImageCacheService::new(cfg.clone()).await); // Build app container diff --git a/src/common.rs b/src/common.rs index 25759f71..0cbb011b 100644 --- a/src/common.rs +++ b/src/common.rs @@ -4,7 +4,7 @@ use crate::auth::AuthorizationService; use crate::cache::image::manager::ImageCacheService; use crate::config::Configuration; use crate::databases::database::Database; -use crate::mailer::MailerService; +use crate::mailer; use crate::tracker::service::Service; use crate::tracker::statistics_importer::StatisticsImporter; @@ -18,7 +18,7 @@ pub struct AppData { pub auth: Arc, pub tracker_service: Arc, pub tracker_statistics_importer: Arc, - pub mailer: Arc, + pub mailer: Arc, pub image_cache_manager: Arc, } @@ -29,7 +29,7 @@ impl AppData { auth: Arc, tracker_service: Arc, tracker_statistics_importer: Arc, - mailer: Arc, + mailer: Arc, image_cache_manager: Arc, ) -> AppData { AppData { diff --git a/src/mailer.rs b/src/mailer.rs index 258106d2..f871b0df 100644 --- a/src/mailer.rs +++ b/src/mailer.rs @@ -11,7 +11,7 @@ use crate::config::Configuration; use crate::errors::ServiceError; use crate::utils::clock::current_time; -pub struct MailerService { +pub struct Service { cfg: Arc, mailer: Arc, } @@ -30,8 +30,8 @@ struct VerifyTemplate { verification_url: String, } -impl MailerService { - pub async fn new(cfg: Arc) -> MailerService { +impl Service { + pub async fn new(cfg: Arc) -> Service { let mailer = Arc::new(Self::get_mailer(&cfg).await); Self { cfg, mailer } @@ -57,6 +57,11 @@ impl MailerService { } } + /// Send Verification Email + /// + /// # Errors + /// + /// This function will return an error if unable to send an email. pub async fn send_verification_mail( &self, to: &str, @@ -96,10 +101,13 @@ impl MailerService { .singlepart( SinglePart::builder() .header(lettre::message::header::ContentType::TEXT_HTML) - .body(ctx.render_once().unwrap()), + .body( + ctx.render_once() + .expect("value `ctx` must have some internal error passed into it"), + ), ), ) - .unwrap(); + .expect("the `multipart` builder had an error"); match self.mailer.send(mail).await { Ok(_res) => Ok(()),