From 49c58903bcc1ae47d3927a9b7745ab1183af7eb9 Mon Sep 17 00:00:00 2001 From: josidd <joseph.siddons@noc.ac.uk> Date: Wed, 25 Sep 2024 15:01:53 +0100 Subject: [PATCH] test(ellipse): add additional boundary tests --- test/test_octtree.py | 14 ++++++++++++-- test/test_quadtree.py | 11 +++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/test/test_octtree.py b/test/test_octtree.py index 6f39bcb..8875b7a 100644 --- a/test/test_octtree.py +++ b/test/test_octtree.py @@ -136,6 +136,8 @@ class TestOctTree(unittest.TestCase): theta = 0 d = datetime(2023, 3, 24, 12, 0) + dt = timedelta(days=10) + test_datetime = d + timedelta(hours=4) test_timedelta = timedelta(hours=5) ellipse = Ellipse( @@ -147,8 +149,16 @@ class TestOctTree(unittest.TestCase): ellipse.p2_lat, ) - d = datetime(2023, 3, 24, 12, 0) - dt = timedelta(days=10) + # TEST: Near Boundary Points + assert ellipse.contains(Record(13.49, 2.5, test_datetime)) + assert ellipse.contains(Record(11.51, 2.5, test_datetime)) + assert ellipse.contains(Record(12.5, 2.99, test_datetime)) + assert ellipse.contains(Record(12.5, 2.01, test_datetime)) + assert not ellipse.contains(Record(13.51, 2.5, test_datetime)) + assert not ellipse.contains(Record(11.49, 2.5, test_datetime)) + assert not ellipse.contains(Record(12.5, 3.01, test_datetime)) + assert not ellipse.contains(Record(12.5, 1.99, test_datetime)) + boundary = Rectangle(10, 4, d, 20, 8, dt) otree = OctTree(boundary, capacity=3) diff --git a/test/test_quadtree.py b/test/test_quadtree.py index d117872..815d7c2 100644 --- a/test/test_quadtree.py +++ b/test/test_quadtree.py @@ -109,6 +109,17 @@ class TestQuadTree(unittest.TestCase): ellipse.p2_lon, ellipse.p2_lat, ) + + # TEST: Near Boundary Points + assert ellipse.contains(Record(13.49, 2.5)) + assert ellipse.contains(Record(11.51, 2.5)) + assert ellipse.contains(Record(12.5, 2.99)) + assert ellipse.contains(Record(12.5, 2.01)) + assert not ellipse.contains(Record(13.51, 2.5)) + assert not ellipse.contains(Record(11.49, 2.5)) + assert not ellipse.contains(Record(12.5, 3.01)) + assert not ellipse.contains(Record(12.5, 1.99)) + boundary = Rectangle(10, 4, 20, 8) qtree = QuadTree(boundary, capacity=3) points: list[Record] = [ -- GitLab