DynamicsUtilitiesTest.cpp
Go to the documentation of this file.
00001 #include <gtest/gtest.h>
00002 #include "robodyn_controllers/DynamicsUtilities.h"
00003 #include <ros/package.h>
00004 
00005 class DynamicsUtilitiesTest : public ::testing::Test
00006 {
00007 protected:
00008     virtual void SetUp()
00009     {
00010     }
00011 
00012     virtual void TearDown()
00013     {
00014     }
00015 
00016     DynamicsUtilities du;
00017 };
00018 
00019 TEST_F(DynamicsUtilitiesTest, SumWrenchesTest)
00020 {
00021     std::vector<KDL::Wrench> wrenchVec;
00022 
00023     EXPECT_EQ(KDL::Wrench::Zero(), du.SumWrenches(wrenchVec));
00024 
00025     KDL::Wrench testWrench(KDL::Vector(1.0, 0.0, 2.0), KDL::Vector(0.0, 3.0, 0.0));
00026     wrenchVec.push_back(testWrench);
00027 
00028     EXPECT_EQ(testWrench, du.SumWrenches(wrenchVec));
00029 
00030     testWrench.force.x(3.0);
00031     testWrench.torque.z(5.0);
00032     wrenchVec.push_back(testWrench);
00033 
00034     EXPECT_EQ(KDL::Wrench(KDL::Vector(4.0, 0.0, 4.0), KDL::Vector(0.0, 6.0, 5.0)), du.SumWrenches(wrenchVec));
00035 
00036 }
00037 
00038 TEST_F(DynamicsUtilitiesTest, isBaseFrameTest)
00039 {
00040     std::vector<std::string> baseFrames;
00041     std::string              frame = "link1";
00042 
00043     EXPECT_FALSE(du.isBaseFrame(baseFrames, frame));
00044 
00045     baseFrames.push_back("link2");
00046 
00047     EXPECT_FALSE(du.isBaseFrame(baseFrames, frame));
00048 
00049     baseFrames.push_back(frame);
00050     EXPECT_TRUE(du.isBaseFrame(baseFrames, frame));
00051 
00052 }
00053 
00054 TEST_F(DynamicsUtilitiesTest, magTest)
00055 {
00056     KDL::Vector vec;
00057 
00058     EXPECT_EQ(0.0, du.mag(vec));
00059 
00060     vec.x(2.0);
00061     EXPECT_EQ(2.0, du.mag(vec));
00062 
00063     vec.y(3.0);
00064     vec.z(4.0);
00065     vec.x(0.0);
00066     EXPECT_EQ(5.0, du.mag(vec));
00067 }
00068 
00069 TEST_F(DynamicsUtilitiesTest, MultiplyJacobianTransposeTest)
00070 {
00071     KDL::Jacobian jac(2);
00072     KDL::Wrench   wren;
00073     KDL::JntArray tau, test(2);
00074 
00075     du.MultiplyJacobianTranspose(jac, wren, tau);
00076     EXPECT_EQ(test, tau);
00077     // This is a pretty lame test.  Should robustify.
00078 }
00079 
00080 
00081 int main(int argc, char** argv)
00082 {
00083     ::testing::InitGoogleTest(&argc, argv);
00084     return RUN_ALL_TESTS();
00085 }


robodyn_controllers
Author(s):
autogenerated on Sat Jun 8 2019 20:20:53