misskey_api/endpoint/messaging/
history.rs1use crate::model::messaging::MessagingMessage;
2
3use serde::Serialize;
4
5#[derive(Serialize, Default, Debug, Clone)]
6#[serde(rename_all = "camelCase")]
7pub struct Request {
8 #[serde(skip_serializing_if = "Option::is_none")]
9 pub group: Option<bool>,
10 #[serde(skip_serializing_if = "Option::is_none")]
12 pub limit: Option<u8>,
13}
14
15impl misskey_core::Request for Request {
16 type Response = Vec<MessagingMessage>;
17 const ENDPOINT: &'static str = "messaging/history";
18}
19
20#[cfg(test)]
21mod tests {
22 use super::Request;
23 use crate::test::{ClientExt, TestClient};
24
25 #[tokio::test]
26 async fn request() {
27 let client = TestClient::new();
28 client.test(Request::default()).await;
29 }
30
31 #[tokio::test]
32 async fn request_with_option() {
33 let client = TestClient::new();
34 client
35 .test(Request {
36 group: Some(true),
37 limit: None,
38 })
39 .await;
40 }
41
42 #[tokio::test]
43 async fn request_with_limit() {
44 let client = TestClient::new();
45 client
46 .test(Request {
47 group: None,
48 limit: Some(100),
49 })
50 .await;
51 }
52}