1use crate::uint::U256;
4
5impl_fmt! {
6 impl Fmt for U256;
7}
8
9#[cfg(test)]
10mod tests {
11 use super::*;
12 use alloc::format;
13
14 #[test]
15 fn debug() {
16 assert_eq!(
17 format!("{:?}", U256::MAX),
18 "115792089237316195423570985008687907853269984665640564039457584007913129639935",
19 );
20 assert_eq!(
21 format!("{:x?}", U256::MAX),
22 "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
23 );
24 assert_eq!(
25 format!("{:#X?}", U256::MAX),
26 "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF",
27 );
28 }
29
30 #[test]
31 fn display() {
32 assert_eq!(
33 format!("{}", U256::MAX),
34 "115792089237316195423570985008687907853269984665640564039457584007913129639935",
35 );
36 }
37
38 #[test]
39 fn radix() {
40 assert_eq!(format!("{:b}", U256::new(42)), "101010");
41 assert_eq!(format!("{:o}", U256::new(42)), "52");
42 assert_eq!(format!("{:x}", U256::new(42)), "2a");
43 }
44
45 #[test]
46 fn exp() {
47 assert_eq!(format!("{:e}", U256::new(42)), "4.2e1");
48 assert_eq!(format!("{:e}", U256::new(10).pow(77)), "1e77");
49 assert_eq!(format!("{:E}", U256::new(10).pow(39) * 1337), "1.337E42");
50 }
51}