xref: /aosp_15_r20/external/cronet/third_party/rust/chromium_crates_io/vendor/hex-literal-0.4.1/tests/basic.rs (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 use hex_literal::hex;
2 
3 #[test]
single_literal()4 fn single_literal() {
5     assert_eq!(hex!("ff e4"), [0xff, 0xe4]);
6 }
7 
8 #[test]
empty()9 fn empty() {
10     let nothing: [u8; 0] = hex!();
11     let empty_literals: [u8; 0] = hex!("" "" "");
12     let expected: [u8; 0] = [];
13     assert_eq!(nothing, expected);
14     assert_eq!(empty_literals, expected);
15 }
16 
17 #[test]
upper_case()18 fn upper_case() {
19     assert_eq!(hex!("AE DF 04 B2"), [0xae, 0xdf, 0x04, 0xb2]);
20     assert_eq!(hex!("FF BA 8C 00 01"), [0xff, 0xba, 0x8c, 0x00, 0x01]);
21 }
22 
23 #[test]
mixed_case()24 fn mixed_case() {
25     assert_eq!(hex!("bF dd E4 Cd"), [0xbf, 0xdd, 0xe4, 0xcd]);
26 }
27 
28 #[test]
multiple_literals()29 fn multiple_literals() {
30     assert_eq!(
31         hex!(
32             "01 dd f7 7f"
33             "ee f0 d8"
34         ),
35         [0x01, 0xdd, 0xf7, 0x7f, 0xee, 0xf0, 0xd8]
36     );
37     assert_eq!(
38         hex!(
39             "ff"
40             "e8 d0"
41             ""
42             "01 1f"
43             "ab"
44         ),
45         [0xff, 0xe8, 0xd0, 0x01, 0x1f, 0xab]
46     );
47 }
48 
49 #[test]
no_spacing()50 fn no_spacing() {
51     assert_eq!(hex!("abf0d8bb0f14"), [0xab, 0xf0, 0xd8, 0xbb, 0x0f, 0x14]);
52     assert_eq!(
53         hex!("09FFd890cbcCd1d08F"),
54         [0x09, 0xff, 0xd8, 0x90, 0xcb, 0xcc, 0xd1, 0xd0, 0x8f]
55     );
56 }
57 
58 #[test]
allows_various_spacing()59 fn allows_various_spacing() {
60     // newlines
61     assert_eq!(
62         hex!(
63             "f
64             f
65             d
66             0
67             e
68 
69             8
70             "
71         ),
72         [0xff, 0xd0, 0xe8]
73     );
74     // tabs
75     assert_eq!(hex!("9f	d		1		f07	3		01	"), [0x9f, 0xd1, 0xf0, 0x73, 0x01]);
76     // spaces
77     assert_eq!(hex!(" e    e d0  9 1   f  f  "), [0xee, 0xd0, 0x91, 0xff]);
78 }
79 
80 #[test]
can_use_const()81 fn can_use_const() {
82     const _: [u8; 4] = hex!("ff d3 01 7f");
83 }
84