From 7f94f49668bfdffc514c7dd2c278ffc421adac50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joan=20Sol=C3=A0?= <jsola@iri.upc.edu> Date: Wed, 17 Jun 2020 19:15:34 +0200 Subject: [PATCH] Tetsts for odometry: init and integrate --- test/gtest_processor_motion.cpp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/test/gtest_processor_motion.cpp b/test/gtest_processor_motion.cpp index 527aba103..a977672d0 100644 --- a/test/gtest_processor_motion.cpp +++ b/test/gtest_processor_motion.cpp @@ -423,6 +423,37 @@ TEST_F(ProcessorMotion_test, splitBufferFixPrior) C_source->getBuffer().print(1,1,1,0); } +TEST_F(ProcessorMotion_test, initOdometry) +{ + auto odometry = processor->getOdometry(); + + ASSERT_MATRIX_APPROX(odometry.at('P'), Vector2d(0,0), 1e-20); + ASSERT_MATRIX_APPROX(odometry.at('O'), Vector1d(0 ), 1e-20); +} + +TEST_F(ProcessorMotion_test, integrateOdometry) +{ + auto odometry = processor->getOdometry(); + + ASSERT_MATRIX_APPROX(odometry.at('P'), Vector2d(0,0), 1e-20); + ASSERT_MATRIX_APPROX(odometry.at('O'), Vector1d(0 ), 1e-20); + + data << 1,0; + capture->setData(data); + + capture->setTimeStamp(capture->getTimeStamp() + 1.0); + capture->process(); + odometry = processor->getOdometry(); + ASSERT_MATRIX_APPROX(odometry.at('P'), Vector2d(1,0), 1e-20); + ASSERT_MATRIX_APPROX(odometry.at('O'), Vector1d(0 ), 1e-20); + + capture->setTimeStamp(capture->getTimeStamp() + 1.0); + capture->process(); + odometry = processor->getOdometry(); + ASSERT_MATRIX_APPROX(odometry.at('P'), Vector2d(2,0), 1e-20); + ASSERT_MATRIX_APPROX(odometry.at('O'), Vector1d(0 ), 1e-20); +} + int main(int argc, char **argv) { -- GitLab