MCPcopy Create free account
hub / github.com/apache/arrow / TEST

Function TEST

cpp/src/parquet/geospatial/util_internal_test.cc:28–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

26namespace parquet::geospatial {
27
28TEST(TestGeometryUtil, TestBoundingBox) {
29 BoundingBox box;
30 EXPECT_EQ(box, BoundingBox({kInf, kInf, kInf, kInf}, {-kInf, -kInf, -kInf, -kInf}));
31 EXPECT_EQ(box.ToString(),
32 "BoundingBox\n x: [inf, -inf]\n y: [inf, -inf]\n z: [inf, -inf]\n m: "
33 "[inf, -inf]\n");
34
35 BoundingBox box_xyzm({-1, -2, -3, -4}, {1, 2, 3, 4});
36 BoundingBox box_xy({-10, -20, kInf, kInf}, {10, 20, -kInf, -kInf});
37 BoundingBox box_xyz({kInf, kInf, -30, kInf}, {-kInf, -kInf, 30, -kInf});
38 BoundingBox box_xym({kInf, kInf, kInf, -40}, {-kInf, -kInf, -kInf, 40});
39
40 box_xyzm.Merge(box_xy);
41 EXPECT_EQ(box_xyzm, BoundingBox({-10, -20, -3, -4}, {10, 20, 3, 4}));
42 EXPECT_EQ(box_xyzm.ToString(),
43 "BoundingBox\n x: [-10, 10]\n y: [-20, 20]\n z: [-3, 3]\n m: "
44 "[-4, 4]\n");
45
46 box_xyzm.Merge(box_xyz);
47 EXPECT_EQ(box_xyzm, BoundingBox({-10, -20, -30, -4}, {10, 20, 30, 4}));
48
49 box_xyzm.Merge(box_xym);
50 EXPECT_EQ(box_xyzm, BoundingBox({-10, -20, -30, -40}, {10, 20, 30, 40}));
51
52 double nan_dbl = std::numeric_limits<double>::quiet_NaN();
53 BoundingBox box_nan({nan_dbl, nan_dbl, nan_dbl, nan_dbl},
54 {nan_dbl, nan_dbl, nan_dbl, nan_dbl});
55 box_xyzm.Merge(box_nan);
56 for (int i = 0; i < 4; i++) {
57 EXPECT_TRUE(std::isnan(box_xyzm.min[i]));
58 EXPECT_TRUE(std::isnan(box_xyzm.max[i]));
59 }
60
61 box_xyzm.Reset();
62 EXPECT_EQ(box_xyzm, BoundingBox());
63}
64
65TEST(TestGeometryUtil, TestBoundingBoxEquals) {
66 BoundingBox box_a({-1, -2, -3, -4}, {1, 2, 3, 4});

Callers

nothing calls this directly

Calls 7

push_backMethod · 0.80
MergeGeometryMethod · 0.80
whatMethod · 0.80
BoundingBoxFunction · 0.70
ToStringMethod · 0.45
MergeMethod · 0.45
ResetMethod · 0.45

Tested by

no test coverage detected