Expand description
Provides a macro assert_within! for tests involving floating point numbers.
assert_within!(+0.001, val, target, "Value was not within additive 0.001: {more} {context}");
assert_within!(~0.05, val, target, "Value was not within 5% of target: {additional} {information:?}");Highlights include:
- Pass arguments by reference or value
- Sigils (+, ~) indicate additive or relative error
- Traps Nan in any of the arguments
- Errors cause both the stringified expressions and their values to be displayed
- Arbitrary additional format args
- Generic over
num_traits::FloatCore - no_std compatible