mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2026-02-11 10:05:41 +00:00
feat: utility method to check if captcha is published
This commit is contained in:
@@ -289,6 +289,18 @@ pub trait MCDatabase: std::marker::Send + std::marker::Sync + CloneSPDatabase {
|
|||||||
&self,
|
&self,
|
||||||
campaign_id: &str,
|
campaign_id: &str,
|
||||||
) -> DBResult<()>;
|
) -> DBResult<()>;
|
||||||
|
|
||||||
|
/// Get publishing status of pow analytics for captcha ID/ campaign ID
|
||||||
|
async fn analytics_captcha_is_published(&self, campaign_id: &str) -> DBResult<bool> {
|
||||||
|
match self
|
||||||
|
.analytics_get_psuedo_id_from_capmaign_id(campaign_id)
|
||||||
|
.await
|
||||||
|
{
|
||||||
|
Ok(_) => Ok(true),
|
||||||
|
Err(errors::DBError::CaptchaNotFound) => Ok(false),
|
||||||
|
Err(e) => Err(e),
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Default, Deserialize, Serialize, PartialEq)]
|
#[derive(Debug, Clone, Default, Deserialize, Serialize, PartialEq)]
|
||||||
|
|||||||
@@ -308,12 +308,7 @@ pub async fn database_works<'a, T: MCDatabase>(
|
|||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
assert_eq!(db.analytics_fetch(c.key, 1000, 0).await.unwrap().len(), 0);
|
assert_eq!(db.analytics_fetch(c.key, 1000, 0).await.unwrap().len(), 0);
|
||||||
let err = db.analytics_get_psuedo_id_from_capmaign_id(c.key).await;
|
assert!(!db.analytics_captcha_is_published(c.key).await.unwrap());
|
||||||
assert!(err.is_err());
|
|
||||||
assert_eq!(
|
|
||||||
format!("{:?}", err),
|
|
||||||
format!("{:?}", Err::<(), errors::DBError>(DBError::CaptchaNotFound))
|
|
||||||
);
|
|
||||||
db.analytics_delete_all_records_for_campaign(c.key)
|
db.analytics_delete_all_records_for_campaign(c.key)
|
||||||
.await
|
.await
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|||||||
Reference in New Issue
Block a user