use super::ConfigError;
#[test]
fn display_prints_exactly_the_message() {
for message in [
"Unknown configuration key: plugin",
"bad \"key\"\nsecond line\t\\",
"naïve ключ 設定",
"",
] {
let error: ConfigError = ConfigError::new(message);
assert_eq!(error.message, message);
assert_eq!(error.to_string(), message);
assert_eq!(format!("[{error}]"), format!("[{message}]"));
}
}
#[test]
fn errors_compare_by_message_and_have_no_source() {
assert_eq!(ConfigError::new("a"), ConfigError::new("a"));
assert_ne!(ConfigError::new("a"), ConfigError::new("b"));
let error: ConfigError = ConfigError::new("a");
let general: &dyn std::error::Error = &error;
assert!(general.source().is_none());
assert_eq!(general.to_string(), "a");
}