twilight_model/gateway/payload/incoming/
role_delete.rs

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