twilight_model/channel/
followed_channel.rs1use crate::id::{
2 marker::{ChannelMarker, WebhookMarker},
3 Id,
4};
5use serde::{Deserialize, Serialize};
6
7#[derive(Clone, Debug, Deserialize, Eq, Hash, PartialEq, Serialize)]
14pub struct FollowedChannel {
15 pub channel_id: Id<ChannelMarker>,
16 pub webhook_id: Id<WebhookMarker>,
17}
18
19#[cfg(test)]
20mod tests {
21 use super::FollowedChannel;
22 use crate::id::Id;
23 use serde_test::Token;
24
25 #[test]
26 fn followed_channel() {
27 let value = FollowedChannel {
28 channel_id: Id::new(1),
29 webhook_id: Id::new(2),
30 };
31
32 serde_test::assert_tokens(
33 &value,
34 &[
35 Token::Struct {
36 name: "FollowedChannel",
37 len: 2,
38 },
39 Token::Str("channel_id"),
40 Token::NewtypeStruct { name: "Id" },
41 Token::Str("1"),
42 Token::Str("webhook_id"),
43 Token::NewtypeStruct { name: "Id" },
44 Token::Str("2"),
45 Token::StructEnd,
46 ],
47 );
48 }
49}