misskey_api/endpoint/following/requests/
cancel.rs

1use crate::model::{id::Id, user::User};
2
3use serde::Serialize;
4
5#[derive(Serialize, Debug, Clone)]
6#[serde(rename_all = "camelCase")]
7pub struct Request {
8    pub user_id: Id<User>,
9}
10
11impl misskey_core::Request for Request {
12    type Response = User;
13    const ENDPOINT: &'static str = "following/requests/cancel";
14}
15
16#[cfg(test)]
17mod tests {
18    use super::Request;
19    use crate::test::{ClientExt, TestClient};
20
21    #[tokio::test]
22    async fn request() {
23        let client = TestClient::new();
24        let (new_user, new_client) = client.admin.create_user().await;
25
26        new_client
27            .test(crate::endpoint::i::update::Request {
28                name: None,
29                description: None,
30                lang: None,
31                location: None,
32                birthday: None,
33                avatar_id: None,
34                banner_id: None,
35                fields: None,
36                is_locked: Some(true),
37                #[cfg(feature = "12-63-0")]
38                is_explorable: None,
39                careful_bot: None,
40                auto_accept_followed: Some(false),
41                is_bot: None,
42                is_cat: None,
43                #[cfg(not(feature = "12-55-0"))]
44                auto_watch: None,
45                inject_featured_note: None,
46                always_mark_nsfw: None,
47                pinned_page_id: None,
48                muted_words: None,
49                #[cfg(feature = "12-60-0")]
50                no_crawle: None,
51            })
52            .await;
53        client
54            .user
55            .test(crate::endpoint::following::create::Request {
56                user_id: new_user.id.clone(),
57            })
58            .await;
59
60        client
61            .user
62            .test(Request {
63                user_id: new_user.id,
64            })
65            .await;
66    }
67}