mirror of
https://github.com/eyre-rs/eyre.git
synced 2025-09-28 13:31:29 +00:00
34 lines
690 B
Rust
34 lines
690 B
Rust
mod common;
|
|
|
|
use self::common::*;
|
|
use eyre::ensure;
|
|
|
|
#[test]
|
|
fn test_messages() {
|
|
assert_eq!("oh no!", bail_literal().unwrap_err().to_string());
|
|
assert_eq!("oh no!", bail_fmt().unwrap_err().to_string());
|
|
assert_eq!("oh no!", bail_error().unwrap_err().to_string());
|
|
}
|
|
|
|
#[test]
|
|
fn test_ensure() {
|
|
let f = || {
|
|
ensure!(1 + 1 == 2, "This is correct");
|
|
Ok(())
|
|
};
|
|
assert!(f().is_ok());
|
|
|
|
let v = 1;
|
|
let f = || {
|
|
ensure!(v + v == 2, "This is correct, v: {}", v);
|
|
Ok(())
|
|
};
|
|
assert!(f().is_ok());
|
|
|
|
let f = || {
|
|
ensure!(v + v == 1, "This is not correct, v: {}", v);
|
|
Ok(())
|
|
};
|
|
assert!(f().is_err());
|
|
}
|