]> git.proxmox.com Git - cargo.git/blob - vendor/anyhow/tests/test_macros.rs
New upstream version 0.47.0
[cargo.git] / vendor / anyhow / tests / test_macros.rs
1 #![allow(clippy::eq_op)]
2
3 mod common;
4
5 use self::common::*;
6 use anyhow::ensure;
7
8 #[test]
9 fn test_messages() {
10 assert_eq!("oh no!", bail_literal().unwrap_err().to_string());
11 assert_eq!("oh no!", bail_fmt().unwrap_err().to_string());
12 assert_eq!("oh no!", bail_error().unwrap_err().to_string());
13 }
14
15 #[test]
16 fn test_ensure() {
17 let f = || {
18 ensure!(1 + 1 == 2, "This is correct");
19 Ok(())
20 };
21 assert!(f().is_ok());
22
23 let v = 1;
24 let f = || {
25 ensure!(v + v == 2, "This is correct, v: {}", v);
26 Ok(())
27 };
28 assert!(f().is_ok());
29
30 let f = || {
31 ensure!(v + v == 1, "This is not correct, v: {}", v);
32 Ok(())
33 };
34 assert!(f().is_err());
35 }