]> git.lizzy.rs Git - rust.git/blob - src/test/ui/bool.rs
Do not use Cortex-M0 since Qemu is too old
[rust.git] / src / test / ui / bool.rs
1 // run-pass
2 // Basic boolean tests
3
4
5 use std::cmp::Ordering::{Equal, Greater, Less};
6 use std::ops::{BitAnd, BitOr, BitXor};
7
8 fn main() {
9     assert_eq!(false.eq(&true), false);
10     assert_eq!(false == false, true);
11     assert_eq!(false != true, true);
12     assert_eq!(false.ne(&false), false);
13
14     assert_eq!(false.bitand(false), false);
15     assert_eq!(true.bitand(false), false);
16     assert_eq!(false.bitand(true), false);
17     assert_eq!(true.bitand(true), true);
18
19     assert_eq!(false & false, false);
20     assert_eq!(true & false, false);
21     assert_eq!(false & true, false);
22     assert_eq!(true & true, true);
23
24     assert_eq!(false.bitor(false), false);
25     assert_eq!(true.bitor(false), true);
26     assert_eq!(false.bitor(true), true);
27     assert_eq!(true.bitor(true), true);
28
29     assert_eq!(false | false, false);
30     assert_eq!(true | false, true);
31     assert_eq!(false | true, true);
32     assert_eq!(true | true, true);
33
34     assert_eq!(false.bitxor(false), false);
35     assert_eq!(true.bitxor(false), true);
36     assert_eq!(false.bitxor(true), true);
37     assert_eq!(true.bitxor(true), false);
38
39     assert_eq!(false ^ false, false);
40     assert_eq!(true ^ false, true);
41     assert_eq!(false ^ true, true);
42     assert_eq!(true ^ true, false);
43
44     assert_eq!(!true, false);
45     assert_eq!(!false, true);
46
47     let s = false.to_string();
48     assert_eq!(s, "false");
49     let s = true.to_string();
50     assert_eq!(s, "true");
51
52     assert!(true > false);
53     assert!(!(false > true));
54
55     assert!(false < true);
56     assert!(!(true < false));
57
58     assert!(false <= false);
59     assert!(false >= false);
60     assert!(true <= true);
61     assert!(true >= true);
62
63     assert!(false <= true);
64     assert!(!(false >= true));
65     assert!(true >= false);
66     assert!(!(true <= false));
67
68     assert_eq!(true.cmp(&true), Equal);
69     assert_eq!(false.cmp(&false), Equal);
70     assert_eq!(true.cmp(&false), Greater);
71     assert_eq!(false.cmp(&true), Less);
72 }