From 2bf3d8af86ee7f8c0760ed714ab36f6f1abb2cd6 Mon Sep 17 00:00:00 2001 From: Syed Ghufran Hassan Date: Wed, 23 Apr 2025 21:16:48 +0500 Subject: [PATCH] Update closest_points.rs Adding edge case for large dataset. --- src/geometry/closest_points.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/geometry/closest_points.rs b/src/geometry/closest_points.rs index e92dc562501..19773f68164 100644 --- a/src/geometry/closest_points.rs +++ b/src/geometry/closest_points.rs @@ -241,4 +241,19 @@ mod tests { Some((Point::new(0., 40.), Point::new(0., 42.))) ); } + #[test] +fn large_number_of_points() { + let mut vals = vec![]; + for i in 0..1000 { + vals.push(Point::new(i as f64, (i * i % 100) as f64)); + } + vals.push(Point::new(500.0, 20.0)); + vals.push(Point::new(500.000001, 20.0)); + + assert_display!( + closest_points(&vals), + Some((Point::new(500.0, 20.0), Point::new(500.000001, 20.0))) + ); +} + }