From 884cf6de3d003094d539e830a3c8cb077ec40cee Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Tue, 26 Mar 2024 11:13:04 +0100 Subject: [PATCH] Add some tests for `Rect` --- crates/emath/src/rect.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/crates/emath/src/rect.rs b/crates/emath/src/rect.rs index 72331dae..f23d3500 100644 --- a/crates/emath/src/rect.rs +++ b/crates/emath/src/rect.rs @@ -680,3 +680,22 @@ impl Div for Rect { } } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_rect() { + let r = Rect::from_min_max(pos2(10.0, 10.0), pos2(20.0, 20.0)); + assert_eq!(r.distance_sq_to_pos(pos2(15.0, 15.0)), 0.0); + assert_eq!(r.distance_sq_to_pos(pos2(10.0, 15.0)), 0.0); + assert_eq!(r.distance_sq_to_pos(pos2(10.0, 10.0)), 0.0); + + assert_eq!(r.distance_sq_to_pos(pos2(5.0, 15.0)), 25.0); // left of + assert_eq!(r.distance_sq_to_pos(pos2(25.0, 15.0)), 25.0); // right of + assert_eq!(r.distance_sq_to_pos(pos2(15.0, 5.0)), 25.0); // above + assert_eq!(r.distance_sq_to_pos(pos2(15.0, 25.0)), 25.0); // below + assert_eq!(r.distance_sq_to_pos(pos2(25.0, 5.0)), 50.0); // right and above + } +}