use super::*; #[test] fn limits() { assert_eq!(Ok(u128::MAX), u128::from_str_radix(&u128::MAX.to_base(36), 36)); assert_eq!(Ok(u64::MAX), u64::from_str_radix(&u64::MAX.to_base(36), 36)); assert_eq!(Ok(u32::MAX), u32::from_str_radix(&u32::MAX.to_base(36), 36)); } #[test] fn test_to_base() { fn test(n: u128, base: usize) { assert_eq!(Ok(n), u128::from_str_radix(&n.to_base(base), base as u32)); assert_eq!(Ok(n), u128::from_str_radix(&n.to_base_fixed_len(base), base as u32)); } for base in 2..37 { test(0, base); test(1, base); test(35, base); test(36, base); test(37, base); test(u64::MAX as u128, base); test(u128::MAX, base); const N: u128 = if cfg!(miri) { 10 } else { 1000 }; for i in 0..N { test(i * 983, base); } } }