Skip to main content

ps_promise/rejection/task_failure/implementations/
debug.rs

1use std::fmt::{self, Debug, Formatter};
2
3use super::super::TaskFailure;
4
5impl Debug for TaskFailure {
6    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
7        match self {
8            Self::Aborted => f.write_str("Aborted"),
9            Self::Error(err) => f.debug_tuple("Error").field(err).finish(),
10            Self::Panic(message) => f.debug_tuple("Panic").field(message).finish(),
11            Self::Timeout => f.write_str("Timeout"),
12        }
13    }
14}
15
16#[cfg(test)]
17mod tests {
18    use super::TaskFailure;
19
20    #[test]
21    fn unit_variants_render_their_names() {
22        assert_eq!(format!("{:?}", TaskFailure::Aborted), "Aborted");
23        assert_eq!(format!("{:?}", TaskFailure::Timeout), "Timeout");
24    }
25}