Skip to content

Commit 26688ec

Browse files
committed
Update tests
Signed-off-by: Alberto Tudela <[email protected]>
1 parent 1671854 commit 26688ec

File tree

1 file changed

+34
-16
lines changed

1 file changed

+34
-16
lines changed

test/test_laser_segmentation.cpp

+34-16
Original file line numberDiff line numberDiff line change
@@ -211,11 +211,11 @@ TEST(LaserSegmentationTest, filterSegments) {
211211

212212
// Set the parameters
213213
nav2_util::declare_parameter_if_not_declared(
214-
node, "min_points_segment", rclcpp::ParameterValue(2));
214+
node, "min_points_segment", rclcpp::ParameterValue(1));
215215
nav2_util::declare_parameter_if_not_declared(
216-
node, "max_points_segment", rclcpp::ParameterValue(4));
216+
node, "max_points_segment", rclcpp::ParameterValue(3));
217217
nav2_util::declare_parameter_if_not_declared(
218-
node, "min_avg_distance_from_sensor", rclcpp::ParameterValue(0.1));
218+
node, "min_avg_distance_from_sensor", rclcpp::ParameterValue(1.0));
219219
nav2_util::declare_parameter_if_not_declared(
220220
node, "max_avg_distance_from_sensor", rclcpp::ParameterValue(10.0));
221221
nav2_util::declare_parameter_if_not_declared(
@@ -228,19 +228,15 @@ TEST(LaserSegmentationTest, filterSegments) {
228228
node, "noise_reduction", rclcpp::ParameterValue(0.1));
229229
node->configure();
230230

231-
// Set a segment list with 1 segments
231+
// Set a segment list with 0 segments
232232
std::vector<slg::Segment2D> segment_list;
233-
slg::Segment2D segment;
234-
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
235-
segment_list.push_back(segment);
236-
// Filter the segments
237233
auto filtered_segments = node->filter_segments(segment_list);
238234
// Check the filtered segments
239235
EXPECT_EQ(filtered_segments.size(), 0);
240236

241237
// Set a segment list with 4 segments of 1 point
242238
segment_list.clear();
243-
segment.clear();
239+
slg::Segment2D segment;
244240
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
245241
segment_list.push_back(segment);
246242
segment_list.push_back(segment);
@@ -251,60 +247,82 @@ TEST(LaserSegmentationTest, filterSegments) {
251247
// Check the filtered segments
252248
EXPECT_EQ(filtered_segments.size(), 0);
253249

254-
// Set a segment list with 1 segment with centroid below the minimum distance
250+
// Set a segment list with 2 segments with centroid below the minimum distance
255251
segment_list.clear();
256252
segment.clear();
257253
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
258254
segment_list.push_back(segment);
255+
segment.clear();
256+
segment.add_point(slg::Point2D(0.5, 0.5, slg::BACKGROUND));
257+
segment_list.push_back(segment);
259258
// Filter the segments
260259
filtered_segments = node->filter_segments(segment_list);
261260
// Check the filtered segments
262261
EXPECT_EQ(filtered_segments.size(), 0);
263262

264-
// Set a segment list with 1 segment with centroid above the maximum distance
263+
// Set a segment list with 2 segments with centroid above the maximum distance
265264
segment_list.clear();
266265
segment.clear();
267266
segment.add_point(slg::Point2D(11.0, 11.0, slg::BACKGROUND));
268267
segment_list.push_back(segment);
268+
segment.clear();
269+
segment.add_point(slg::Point2D(12.0, 12.0, slg::BACKGROUND));
270+
segment_list.push_back(segment);
269271
// Filter the segments
270272
filtered_segments = node->filter_segments(segment_list);
271273
// Check the filtered segments
272274
EXPECT_EQ(filtered_segments.size(), 0);
273275

274-
// Set a segment list with 1 segment with width below the minimum width
276+
// Set a segment list with 2 segments with width below the minimum width
275277
segment_list.clear();
276278
segment.clear();
277279
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
278280
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
279281
segment_list.push_back(segment);
282+
segment.clear();
283+
segment.add_point(slg::Point2D(1.0, 1.0, slg::BACKGROUND));
284+
segment.add_point(slg::Point2D(1.0, 1.0, slg::BACKGROUND));
285+
segment_list.push_back(segment);
280286
// Filter the segments
281287
filtered_segments = node->filter_segments(segment_list);
282288
// Check the filtered segments
283289
EXPECT_EQ(filtered_segments.size(), 0);
284290

285-
// Set a segment list with 1 segment with width above the maximum width
291+
// Set a segment list with 2 segments with width above the maximum width
286292
segment_list.clear();
287293
segment.clear();
288294
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
289295
segment.add_point(slg::Point2D(10.0, 10.0, slg::BACKGROUND));
290296
segment_list.push_back(segment);
297+
segment.clear();
298+
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
299+
segment.add_point(slg::Point2D(15.0, 15.0, slg::BACKGROUND));
300+
segment_list.push_back(segment);
291301
// Filter the segments
292302
filtered_segments = node->filter_segments(segment_list);
293303
// Check the filtered segments
294304
EXPECT_EQ(filtered_segments.size(), 0);
295305

296-
// Set a segment list with 1 segment with 2 points
306+
// Set a segment list with 2 segment with 2 points
297307
segment_list.clear();
298308
segment.clear();
299309
segment.add_point(slg::Point2D(0.0, 0.0, slg::BACKGROUND));
300310
segment.add_point(slg::Point2D(1.0, 1.0, slg::BACKGROUND));
311+
std::cout << "Width: " << segment.width_squared() << std::endl;
312+
std::cout << "Centroid: " << segment.centroid().x << " " << segment.centroid().y << std::endl;
313+
segment_list.push_back(segment);
314+
segment.clear();
315+
segment.add_point(slg::Point2D(2.0, 2.0, slg::BACKGROUND));
316+
segment.add_point(slg::Point2D(3.0, 3.0, slg::BACKGROUND));
317+
std::cout << "Width: " << segment.width_squared() << std::endl;
318+
std::cout << "Centroid: " << segment.centroid().x << " " << segment.centroid().y << std::endl;
301319
segment_list.push_back(segment);
302320
// Filter the segments
303321
filtered_segments = node->filter_segments(segment_list);
304322
// Check the filtered segments
305323
EXPECT_EQ(filtered_segments.size(), 1);
306-
EXPECT_EQ(filtered_segments[0].centroid().x, 0.5);
307-
EXPECT_EQ(filtered_segments[0].centroid().y, 0.5);
324+
EXPECT_EQ(filtered_segments[0].centroid().x, 2.5);
325+
EXPECT_EQ(filtered_segments[0].centroid().y, 2.5);
308326
}
309327

310328
int main(int argc, char ** argv)

0 commit comments

Comments
 (0)