1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
// SPDX-License-Identifier: MIT
// Copyright 2023 IROX Contributors
//!
//! Additional assert macros for tests
//!
#[macro_export]
macro_rules! assert_eq_eps {
($left:expr, $right:expr, $eps:expr) => {
match (&$left, &$right) {
(left_val, right_val) => {
let delta = (*left_val - *right_val).abs();
if !(delta <= $eps) {
panic!(
"Assertion failed, {} - {} = {} > {}",
&*left_val, &*right_val, delta, $eps
)
}
}
}
};
}
#[macro_export]
macro_rules! assert_eq_hex {
($left:expr, $right:expr) => {
match (&$left, &$right) {
(left_val, right_val) => {
if *left_val != *right_val {
panic!(
"Assertion failed, 0x{:0X} != 0x{:0X}",
&*left_val, &*right_val
)
}
}
}
};
}