//! Extel errors built using `thiserror`.
use ;
use Error;
/// An Extel error type. Allows error propagation with [`ExtelResult`](crate::ExtelResult). Note
/// that this propagation does not panic the test runner but instead adjusts the test output to
/// reflect the error that is received.
///
/// # Example
/// ```rust
/// use std::fs;
/// use extel::prelude::*;
///
/// fn bad_file() -> ExtelResult {
/// let f = fs::File::open("./this_is_a_bad_file.txt")?;
/// pass!()
/// }
///
/// fn bad_test() -> ExtelResult {
/// extel_assert!(2 < 0, "test failed")
/// }
///
/// assert!(matches!(bad_file(), Err(Error::Io(_))));
/// assert!(matches!(bad_test(), Err(Error::TestFailed(_))));
/// ```