1 #include <gtest/gtest.h> 7 ASSERT_EQ(m1.cols(), m2.cols());
8 ASSERT_EQ(m1.rows(), m2.rows());
10 for (
unsigned int i = 0; i < m1.rows(); i++)
12 for (
unsigned int j = 0; j < m1.cols(); j++)
14 ASSERT_NEAR(m1(i, j), m2(i, j), DBL_EPSILON);
19 TEST(TestMatrixParser, TestParseSquareMatrix)
22 Eigen::MatrixXd square_m;
23 Eigen::Matrix3d expected_m;
25 expected_m << 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0;
28 square_m,
"square_matrix", nh));
30 ASSERT_EQ(square_m.cols(), square_m.rows());
31 ASSERT_EQ(square_m.rows(), 3);
35 TEST(TestMatrixParser, TestParseRectangularMatrix)
38 Eigen::MatrixXd rectangular_m;
39 Eigen::Matrix<double, 3, 2> expected_m;
41 expected_m << 1, 2, 3, 4, 5, 6;
44 rectangular_m,
"rectangular_matrix", nh));
46 ASSERT_EQ(rectangular_m.rows(), 3);
47 ASSERT_EQ(rectangular_m.cols(), 2);
51 TEST(TestMatrixParser, TestVectorParse)
54 Eigen::MatrixXd vector_m;
55 Eigen::Vector3d expected_m;
57 expected_m << 1, 2, 3;
60 vector_m,
"vector", nh));
62 ASSERT_EQ(vector_m.rows(), 3);
63 ASSERT_EQ(vector_m.cols(), 1);
67 TEST(TestMatrixParser, TestFailParse)
70 Eigen::MatrixXd fail_m;
73 fail_m,
"non_existant_ns", nh));
78 int main(
int argc,
char **argv)
82 ::testing::InitGoogleTest(&argc, argv);
83 return RUN_ALL_TESTS();
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
int main(int argc, char **argv)
void assertMatrixEqual(const Eigen::MatrixXd &m1, const Eigen::MatrixXd &m2)
TEST(TestMatrixParser, TestParseSquareMatrix)