use std::fmt;
/// A wrapper for using on test so the error display nicely
pub struct TestError {
pub error: Box<dyn std::error::Error>,
}
impl fmt::Debug for TestError {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
// Format the error in yellow
write!(f, "\x1b[93m{}\x1b[0m", self.error)
}
}
impl<E: std::error::Error + 'static> From<E> for TestError {
fn from(e: E) -> Self {
Self { error: Box::new(e) }
}
}
/// A wrapper for using [Result] in tests, so it display nicely
pub type ResultTest<T> = Result<T, TestError>;