summaryrefslogtreecommitdiffstats
path: root/vendor/always-assert/tests/it.rs
blob: 18855787d541b49fba27aedc01e97e7b5a4b4168 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#[cfg(any(debug_assertions, feature = "force"))]
mod armed {
    use always_assert::{always, never};

    #[test]
    #[should_panic = "assertion failed: 2 + 2 == 5"]
    fn syntax1() {
        let _: bool = always!(2 + 2 == 5);
    }

    #[test]
    #[should_panic = "custom"]
    fn syntax2() {
        let _: bool = always!(2 + 2 == 5, "custom");
    }

    #[test]
    #[should_panic = "custom 92"]
    fn syntax3() {
        let _: bool = always!(2 + 2 == 5, "custom {}", 92);
    }

    #[test]
    #[should_panic = "assertion failed: !(2 + 2 == 4)"]
    fn syntax4() {
        let _: bool = never!(2 + 2 == 4);
    }

    #[test]
    #[should_panic = "custom"]
    fn syntax5() {
        let _: bool = never!(2 + 2 == 4, "custom");
    }

    #[test]
    #[should_panic = "custom 92"]
    fn syntax6() {
        let _: bool = never!(2 + 2 == 4, "custom {}", 92);
    }

    #[test]
    #[should_panic = "unreachable code"]
    fn syntax7() {
        let () = never!();
    }

    #[test]
    #[should_panic = "custom"]
    fn syntax8() {
        let () = never!("custom");
    }

    #[test]
    #[should_panic = "custom"]
    fn syntax9() {
        let () = never!("custom");
    }

    #[test]
    #[should_panic = "custom 92"]
    fn syntax10() {
        let () = never!("custom {}", 92);
    }
}

#[cfg(all(not(debug_assertions), not(feature = "force")))]
mod disarmed {
    use always_assert::{always, never};

    #[test]
    fn syntax1() {
        assert!(!always!(false));
    }

    #[test]
    fn syntax2() {
        assert!(never!(true));
    }
}