itoa/tests/test.rs

36 lines
990 B
Rust
Raw Normal View History

2016-06-25 17:32:23 -04:00
#![allow(non_snake_case)]
#![allow(clippy::cast_lossless, clippy::unseparated_literal_suffix)]
2016-06-25 17:32:23 -04:00
macro_rules! test {
2017-09-12 16:52:24 -04:00
(
2016-06-25 17:32:23 -04:00
$(
2017-09-12 16:52:24 -04:00
$(#[$attr:meta])*
$name:ident($value:expr, $expected:expr)
),*
) => {
$(
$(#[$attr])*
2016-06-25 17:32:23 -04:00
#[test]
fn $name() {
let mut buffer = itoa::Buffer::new();
let s = buffer.format($value);
assert_eq!(s, $expected);
2016-06-25 17:32:23 -04:00
}
)*
}
}
2020-06-28 22:00:26 -04:00
test! {
2017-09-12 16:52:24 -04:00
test_u64_0(0u64, "0"),
test_u64_half(<u32>::max_value() as u64, "4294967295"),
test_u64_max(<u64>::max_value(), "18446744073709551615"),
test_i64_min(<i64>::min_value(), "-9223372036854775808"),
test_i16_0(0i16, "0"),
test_i16_min(<i16>::min_value(), "-32768"),
2016-06-25 17:32:23 -04:00
2017-09-12 16:52:24 -04:00
test_u128_0(0u128, "0"),
test_u128_max(<u128>::max_value(), "340282366920938463463374607431768211455"),
test_i128_min(<i128>::min_value(), "-170141183460469231731687303715884105728")
}