• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #![allow(clippy::eq_op, clippy::shadow_unrelated, clippy::wildcard_imports)]
2 
3 mod common;
4 
5 use self::common::*;
6 use anyhow::ensure;
7 
8 #[test]
test_messages()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]
test_ensure()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 
36     let f = || {
37         ensure!(v + v == 1);
38         Ok(())
39     };
40     assert_eq!(
41         f().unwrap_err().to_string(),
42         "Condition failed: `v + v == 1`",
43     );
44 }
45