diff --git a/crates/lib/mysql_queries/src/queries/model_weights/list_weights_by_user.rs b/crates/lib/mysql_queries/src/queries/model_weights/list_weights_by_user.rs index 6c58d41b2b..246e806bf0 100644 --- a/crates/lib/mysql_queries/src/queries/model_weights/list_weights_by_user.rs +++ b/crates/lib/mysql_queries/src/queries/model_weights/list_weights_by_user.rs @@ -68,10 +68,11 @@ pub struct WeightsJoinUserRecord { } pub async fn list_weights_by_creator_username( - mysql_pool: &mut PoolConnection, + mysql_pool: &MySqlPool, creator_username: &str, can_see_deleted: bool ) -> AnyhowResult> { + let mut connection = mysql_pool.acquire().await?; let raw_weights: Vec = get_raw_weights_by_creator_username(&mut connection, creator_username, can_see_deleted).await?; @@ -84,8 +85,8 @@ pub async fn list_weights_by_creator_username( Ok(filtered_weights) } -pub async fn get_raw_weights_by_creator_username( - connection: &mut MySqlConnection, +async fn get_raw_weights_by_creator_username( + connection: &mut MySqlConnection, creator_username: &str, can_see_deleted: bool ) -> AnyhowResult> { @@ -187,7 +188,7 @@ pub async fn get_raw_weights_by_creator_username( } } -pub async fn map_to_weights(dataset:Vec) -> Vec { +async fn map_to_weights(dataset:Vec) -> Vec { let weights: Vec = dataset .into_iter() .map(|dataset: RawWeightJoinUser| { diff --git a/crates/lib/mysql_queries/src/queries/model_weights/tests.rs b/crates/lib/mysql_queries/src/queries/model_weights/tests.rs index 97cc5380ce..a4e9e3c850 100644 --- a/crates/lib/mysql_queries/src/queries/model_weights/tests.rs +++ b/crates/lib/mysql_queries/src/queries/model_weights/tests.rs @@ -2,7 +2,7 @@ mod tests { use std::result; - use sqlx::MySqlPool; + use sqlx::{MySqlPool, Acquire}; use rand::Rng; use tokio; @@ -24,6 +24,7 @@ mod tests { use crate::queries::model_weights::get_weight::get_weight_by_token; use crate::queries::model_weights::delete_weights::{ delete_weights_as_user, delete_weights_as_mod, undelete_weights_as_mod , undelete_weights_as_user}; + use crate::queries::model_weights::list_weights_by_user::list_weights_by_creator_username; async fn setup() -> sqlx::Pool { println!("Dropped database model_weights"); @@ -281,6 +282,18 @@ mod tests { #[tokio::test] async fn list_all_weights_by_user() -> AnyhowResult<()> { + let pool = setup().await; + + let creator_username = "hanashi".to_string(); + let can_see_deleted = true; + let weights_by_username = list_weights_by_creator_username(&pool, &creator_username, can_see_deleted).await?; + assert_eq!(weights_by_username.len(), 5); + + Ok(()) + } + + async fn list_weights_query_build() -> AnyhowResult<()> { + Ok(()) } }