Added an Error create.
This commit is contained in:
39
src/morethantext/error.rs
Normal file
39
src/morethantext/error.rs
Normal file
@ -0,0 +1,39 @@
|
||||
use std::{error::Error, fmt};
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct MTTError {
|
||||
detail: String,
|
||||
}
|
||||
|
||||
impl MTTError {
|
||||
fn new(detail: &str) -> Self {
|
||||
Self {
|
||||
detail: detail.to_string(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Display for MTTError {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
write!(f, "{}", self.detail)
|
||||
}
|
||||
}
|
||||
|
||||
impl Error for MTTError {}
|
||||
|
||||
#[cfg(test)]
|
||||
mod errors {
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn new_error() {
|
||||
let detail = "new error";
|
||||
let err = MTTError::new(detail);
|
||||
assert!(
|
||||
err.to_string() == detail,
|
||||
"\n\nGot: {}\nWant: {}\n\n",
|
||||
err.to_string(),
|
||||
detail
|
||||
);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user