strike_api/requests/subscriptions/
delete.rs

1use crate::requests::subscriptions::subscription::SubscriptionsRequest;
2use crate::requests::request::{Requestable};
3use crate::errors::{LNError};
4
5
6pub async fn delete_subscription<'a, A>(subscription_request: A) -> Result<(), LNError>
7where
8    A: Into<SubscriptionsRequest<'a>>,
9{
10    let subscription_request = subscription_request.into();
11    subscription_request.delete().await
12}
13
14
15#[cfg(test)]
16pub mod test_delete {
17    use super::*;
18    use crate::test::utils::{get_api_key};
19
20    pub async fn test_delete_subscription(subscription_id: &str) {
21        dotenv::dotenv().ok();
22        let api_key= get_api_key();
23        //Delete the subscription
24        let delete_subscription = delete_subscription((&api_key[..], subscription_id)).await;
25        assert!(delete_subscription.is_ok());
26    }
27}
28
29#[cfg(test)]
30mod tests {
31    use super::*;
32    use crate::requests::subscriptions;
33
34   #[tokio::test]
35   async fn test_delete_subscriptions() {
36        //Create a subscription to delete
37        let subscription = subscriptions::create::test_create::test_create_subscription().await;
38        assert!(subscription.is_ok());
39        let subscription = subscription.unwrap();
40        test_delete::test_delete_subscription( &subscription.id[..]).await;
41   }
42
43//    use crate::requests::subscriptions::get::test_get::test_get_subscriptions;
44
45//    #[tokio::test]
46//    async fn test_delete_all_subscriptions() {
47//         //Create a subscription to delete
48//         let subscriptions = test_get_subscriptions().await.unwrap();
49//         for subscription in subscriptions {
50//             test_delete::test_delete_subscription( &subscription.id[..]).await;
51//         }
52//    }
53}