From 6ae8d6fa9f49cafbdc49ec8079085069b252148f Mon Sep 17 00:00:00 2001 From: MedzikUser Date: Sat, 23 Apr 2022 23:52:54 +0200 Subject: [PATCH] database: add tests for `find_user_by_id` --- database/src/sqlite.rs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/database/src/sqlite.rs b/database/src/sqlite.rs index 7fd02b5..9f31c5f 100644 --- a/database/src/sqlite.rs +++ b/database/src/sqlite.rs @@ -67,6 +67,7 @@ impl Database { }) } + /// Find user by UUID pub async fn find_user_by_id(&self, id: String) -> Result { let query = sqlx::query_as::<_, User>("SELECT * FROM user WHERE id = ?").bind(id); @@ -171,4 +172,36 @@ mod tests { assert_eq!(err.to_string(), "user not found") } + + #[tokio::test] + async fn find_user_by_id() { + let db = open_db().await; + + new_user(&db).await; + + let user = User::new("medzik", "Qwerty1234!"); + + let res = db + .find_user_by_id(user.id) + .await + .expect("find user"); + + assert_eq!(res.password, user.password) + } + + #[tokio::test] + async fn find_user_wrong_id() { + let db = open_db().await; + + new_user(&db).await; + + let other_user = User::new("other_user", "secretpassphrase123!"); + + let err = db + .find_user_by_id(other_user.id) + .await + .unwrap_err(); + + assert_eq!(err.to_string(), "user not found") + } }