gewe_core/message/
revoke.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
4#[serde(rename_all = "camelCase")]
5pub struct RevokeMessageRequest<'a> {
6 #[serde(rename = "appId")]
7 pub app_id: &'a str,
8 #[serde(rename = "toWxid")]
9 pub to_wxid: &'a str,
10 #[serde(rename = "msgId")]
11 pub msg_id: &'a str,
12 #[serde(rename = "newMsgId")]
13 pub new_msg_id: &'a str,
14 #[serde(rename = "createTime")]
15 pub create_time: &'a str,
16}
17
18#[cfg(test)]
19mod tests {
20 use super::*;
21
22 #[test]
23 fn test_revoke_message_request_serialization() {
24 let req = RevokeMessageRequest {
25 app_id: "test_app",
26 to_wxid: "wxid_test",
27 msg_id: "123456",
28 new_msg_id: "789012",
29 create_time: "1234567890",
30 };
31 let json = serde_json::to_string(&req).unwrap();
32 assert!(json.contains("test_app"));
33 assert!(json.contains("wxid_test"));
34 assert!(json.contains("123456"));
35 assert!(json.contains("789012"));
36 assert!(json.contains("1234567890"));
37 }
38}