misskey_api/endpoint/drive/files/
attached_notes.rs

1use crate::model::{drive::DriveFile, id::Id, note::Note};
2
3use serde::Serialize;
4
5#[derive(Serialize, Debug, Clone)]
6#[serde(rename_all = "camelCase")]
7pub struct Request {
8    pub file_id: Id<DriveFile>,
9}
10
11impl misskey_core::Request for Request {
12    type Response = Vec<Note>;
13    const ENDPOINT: &'static str = "drive/files/attached-notes";
14}
15
16#[cfg(test)]
17mod tests {
18    use super::Request;
19    use crate::test::{ClientExt, HttpClientExt, TestClient};
20
21    #[tokio::test]
22    async fn request() {
23        let client = TestClient::new();
24        let file = client.create_text_file("test.txt", "test").await;
25        client
26            .test(crate::endpoint::notes::create::Request {
27                visibility: None,
28                visible_user_ids: None,
29                text: None,
30                cw: None,
31                via_mobile: None,
32                local_only: None,
33                no_extract_mentions: None,
34                no_extract_hashtags: None,
35                no_extract_emojis: None,
36                file_ids: Some(vec![file.id.clone()]),
37                reply_id: None,
38                renote_id: None,
39                poll: None,
40                #[cfg(feature = "12-47-0")]
41                channel_id: None,
42            })
43            .await;
44
45        client.test(Request { file_id: file.id }).await;
46    }
47}