21 #include "gmock/gmock.h" 27 using ::testing::ContainerEq;
29 TEST(VoxelFilterTest, ReturnsTheFirstPointInEachVoxel) {
34 EXPECT_THAT(VoxelFilter(0.3f).Filter(point_cloud),
35 ContainerEq(
PointCloud{point_cloud[0], point_cloud[2]}));
38 TEST(VoxelFilterTest, HandlesLargeCoordinates) {
39 PointCloud point_cloud = {{100000.f, 0.f, 0.f},
40 {100000.001f, -0.0001f, 0.0001f},
41 {100000.003f, -0.0001f, 0.f},
42 {-200000.f, 0.f, 0.f}};
43 EXPECT_THAT(VoxelFilter(0.01f).Filter(point_cloud),
44 ContainerEq(
PointCloud{point_cloud[0], point_cloud[3]}));
47 TEST(VoxelFilterTest, IgnoresTime) {
49 for (
int i = 0; i < 100; ++i) {
50 timed_point_cloud.emplace_back(-100.f, 0.3f, 0.4f, 1.f * i);
52 EXPECT_THAT(VoxelFilter(0.3f).Filter(timed_point_cloud),
std::vector< Eigen::Vector3f > PointCloud
std::vector< Eigen::Vector4f > TimedPointCloud
TEST(TrajectoryConnectivityStateTest, UnknownTrajectory)