use colorize::AnsiColor;
use crate::prelude::SweetError;
use std::fmt::Debug;
use std::fmt::Display;
pub fn panic_str(str: impl AsRef<str>) -> ! { SweetError::panic(str.as_ref()); }
pub fn panic_expected_received_display<T1: Display, T2: Display>(
expected: T1,
received: T2,
) -> ! {
let expected = format!("{}", expected).green();
let received = format!("{}", received).red();
SweetError::panic(format!("Expected: {expected}\nReceived: {received}"));
}
pub fn panic_expected_received_debug<T1: Debug, T2: Debug>(
expected: T1,
received: T2,
) -> ! {
let expected = format!("{:?}", expected).green();
let received = format!("{:?}", received).red();
SweetError::panic(format!("Expected: {expected}\nReceived: {received}"));
}
pub fn panic_expected_received_debug_display<T1: Debug, T2: Display>(
expected: T1,
received: T2,
) -> ! {
let expected = format!("{:?}", expected).green();
let received = format!("{}", received).red();
SweetError::panic(format!("Expected: {expected}\nReceived: {received}"));
}
pub fn panic_expected_received_display_debug<T1: Display, T2: Debug>(
expected: T1,
received: T2,
) -> ! {
let expected = format!("{}", expected).green();
let received = format!("{:?}", received).red();
SweetError::panic(format!("Expected: {expected}\nReceived: {received}"));
}