| 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); | |
| } | |
| } | |
| } |