diff --git a/db/db-core/src/lib.rs b/db/db-core/src/lib.rs index a233952f..9abe9938 100644 --- a/db/db-core/src/lib.rs +++ b/db/db-core/src/lib.rs @@ -101,6 +101,9 @@ pub trait MCDatabase: std::marker::Send + std::marker::Sync + CloneSPDatabase { /// update a user's email async fn update_email(&self, p: &UpdateEmail) -> DBResult<()>; + + /// get a user's password + async fn get_password(&self, username: &str) -> DBResult; } /// Trait to clone MCDatabase diff --git a/db/db-core/src/tests.rs b/db/db-core/src/tests.rs index af210be1..ea77f779 100644 --- a/db/db-core/src/tests.rs +++ b/db/db-core/src/tests.rs @@ -28,6 +28,12 @@ pub async fn database_works<'a, T: MCDatabase>(db: &T, p: &Register<'a>) { ); } db.register(p).await.unwrap(); + + assert_eq!( + db.get_password(p.username).await.unwrap(), + p.hash, + "user password matches" + ); assert!( db.email_exists(p.email.as_ref().unwrap()).await.unwrap(), "user is registered so email should exsit"