mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2025-11-24 14:35:46 +00:00
feat: define interface for getting captcha levels
This commit is contained in:
parent
2dff139ae2
commit
04a9bc5cc7
@ -176,6 +176,13 @@ pub trait MCDatabase: std::marker::Send + std::marker::Sync + CloneSPDatabase {
|
|||||||
|
|
||||||
/// Delete captcha
|
/// Delete captcha
|
||||||
async fn delete_captcha(&self, username: &str, captcha_key: &str) -> DBResult<()>;
|
async fn delete_captcha(&self, username: &str, captcha_key: &str) -> DBResult<()>;
|
||||||
|
|
||||||
|
/// Get captcha levels
|
||||||
|
async fn get_captcha_levels(
|
||||||
|
&self,
|
||||||
|
username: Option<&str>,
|
||||||
|
captcha_key: &str,
|
||||||
|
) -> DBResult<Vec<Level>>;
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug, Default, Deserialize, Serialize)]
|
#[derive(Clone, Debug, Default, Deserialize, Serialize)]
|
||||||
|
|||||||
@ -139,6 +139,16 @@ pub async fn database_works<'a, T: MCDatabase>(
|
|||||||
// add captcha levels
|
// add captcha levels
|
||||||
db.add_captcha_levels(p.username, c.key, l).await.unwrap();
|
db.add_captcha_levels(p.username, c.key, l).await.unwrap();
|
||||||
|
|
||||||
|
// get captcha levels with username
|
||||||
|
let levels = db
|
||||||
|
.get_captcha_levels(Some(p.username), c.key)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
assert_eq!(levels, l);
|
||||||
|
// get captcha levels without username
|
||||||
|
let levels = db.get_captcha_levels(None, c.key).await.unwrap();
|
||||||
|
assert_eq!(levels, l);
|
||||||
|
|
||||||
// delete captcha levels
|
// delete captcha levels
|
||||||
db.delete_captcha_levels(p.username, c.key).await.unwrap();
|
db.delete_captcha_levels(p.username, c.key).await.unwrap();
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user