twilight_model/gateway/payload/incoming/
webhooks_update.rs

1use crate::id::{
2    marker::{ChannelMarker, GuildMarker},
3    Id,
4};
5use serde::{Deserialize, Serialize};
6
7#[derive(Clone, Debug, Deserialize, Eq, Hash, PartialEq, Serialize)]
8pub struct WebhooksUpdate {
9    pub channel_id: Id<ChannelMarker>,
10    pub guild_id: Id<GuildMarker>,
11}
12
13#[cfg(test)]
14mod tests {
15    use super::WebhooksUpdate;
16    use crate::id::Id;
17    use serde_test::Token;
18
19    #[test]
20    fn webhooks_update() {
21        let value = WebhooksUpdate {
22            channel_id: Id::new(1),
23            guild_id: Id::new(2),
24        };
25
26        serde_test::assert_tokens(
27            &value,
28            &[
29                Token::Struct {
30                    name: "WebhooksUpdate",
31                    len: 2,
32                },
33                Token::Str("channel_id"),
34                Token::NewtypeStruct { name: "Id" },
35                Token::Str("1"),
36                Token::Str("guild_id"),
37                Token::NewtypeStruct { name: "Id" },
38                Token::Str("2"),
39                Token::StructEnd,
40            ],
41        );
42    }
43}