clickatell_api/one_api/
channel.rs

1use serde::Serialize;
2
3/// Communication channel the message is sent on
4#[derive(Serialize, Debug, PartialEq)]
5pub enum Channel {
6  #[serde(rename = "sms")]
7  SMS,
8  #[serde(rename = "whatsapp")]
9  WhatsApp,
10  Unknown,
11}
12
13impl std::fmt::Display for Channel {
14  fn fmt(&self, f: &mut std::fmt::Formatter) -> std::result::Result<(), std::fmt::Error> {
15    write!(f, "{:?}", self)
16  }
17}
18
19#[test]
20fn test_channel_serialize() {
21  assert_eq!(
22    String::from("\"sms\""),
23    serde_json::to_string(&Channel::SMS).unwrap()
24  );
25
26  assert_eq!(
27    String::from("\"whatsapp\""),
28    serde_json::to_string(&Channel::WhatsApp).unwrap()
29  );
30}