use crate::{
anyhow::Result,
endpoints::headers::Headers,
endpoints::{get_endpoint_url, Endpoint},
errors::ApiError,
implement_service, implement_utils,
traits::{Service, Utils},
AsyncClient, BoxFuture, SyncClient,
};
use serde::Deserialize;
use std::{future::Future, pin::Pin};
type Request<'a> = DeleteManualContactsRequest<'a>;
type Response = DeleteManualContactsResponse;
type RequestPayload = ();
type ResponsePayload = ();
#[derive(Debug)]
pub struct DeleteManualContactsRequest<'a> {
access_token: &'a str,
pub payload: Option<RequestPayload>,
}
#[derive(Deserialize, Debug)]
pub struct DeleteManualContactsResponse {
pub payload: ResponsePayload,
}
implement_utils!(Request<'_>, RequestPayload);
implement_service!(
Request<'_>,
Response,
ResponsePayload,
Endpoint::ContactsDeleteManualContactsPost,
vec![Headers::ContentTypeAppJson]
);
#[cfg(test)]
mod tests {
use crate::TEST_AUTH_TOKEN;
use super::{Request, RequestPayload};
use crate::{
endpoints::{get_endpoint_url, headers::Headers, Endpoint},
implement_tests,
tests_utils::{get_endpoint_test_body_response, get_mut_or_init, get_mut_or_init_async},
traits::Service,
};
use tokio;
implement_tests!(
Endpoint::ContactsDeleteManualContactsPost,
vec![Headers::TestAuthorization, Headers::ContentTypeAppJson],
Request,
RequestPayload
);
}