diff --git a/argmin-math/src/primitives/minmax.rs b/argmin-math/src/primitives/minmax.rs index 0ebac3382..499caaa24 100644 --- a/argmin-math/src/primitives/minmax.rs +++ b/argmin-math/src/primitives/minmax.rs @@ -48,4 +48,37 @@ make_minmax!(Complex); make_minmax!(Complex); make_minmax!(Complex); -// TODO: tests!!! +#[cfg(test)] +mod tests { + use super::*; + use paste::item; + + macro_rules! make_test { + ($t:ty) => { + item! { + #[test] + fn []() { + let x = 5 as $t; + let y = 10 as $t; + assert_eq!(<$t as ArgminMinMax>::min(&x, &y), x); + assert_eq!(<$t as ArgminMinMax>::max(&x, &y), y); + assert_eq!(<$t as ArgminMinMax>::min(&y, &x), x); + assert_eq!(<$t as ArgminMinMax>::max(&y, &x), y); + } + } + } + } + + make_test!(f32); + make_test!(f64); + make_test!(isize); + make_test!(usize); + make_test!(i8); + make_test!(u8); + make_test!(i16); + make_test!(u16); + make_test!(i32); + make_test!(u32); + make_test!(i64); + make_test!(u64); +}