Go to the documentation of this file.00001 #ifndef FRAMES_TEST_HPP
00002 #define FRAMES_TEST_HPP
00003
00004 #include <cppunit/extensions/HelperMacros.h>
00005 #include <frames.hpp>
00006 #include <jntarray.hpp>
00007
00008 using namespace KDL;
00009
00010 class FramesTest : public CppUnit::TestFixture
00011 {
00012 CPPUNIT_TEST_SUITE( FramesTest);
00013 CPPUNIT_TEST(TestVector);
00014 CPPUNIT_TEST(TestVector2DNorm);
00015 CPPUNIT_TEST(TestTwist);
00016 CPPUNIT_TEST(TestWrench);
00017 CPPUNIT_TEST(TestRotation);
00018 CPPUNIT_TEST(TestQuaternion);
00019 CPPUNIT_TEST(TestFrame);
00020 CPPUNIT_TEST(TestJntArray);
00021 CPPUNIT_TEST(TestRotationDiff);
00022 CPPUNIT_TEST(TestEuler);
00023 CPPUNIT_TEST(TestGetRotAngle);
00024 CPPUNIT_TEST_SUITE_END();
00025
00026 public:
00027 void setUp();
00028 void tearDown();
00029
00030 void TestVector();
00031 void TestVector2DNorm();
00032 void TestTwist();
00033 void TestWrench();
00034 void TestRotation();
00035 void TestQuaternion();
00036 void TestFrame();
00037 void TestJntArray();
00038 void TestJntArrayWhenEmpty();
00039 void TestRotationDiff();
00040 void TestEuler();
00041 void TestGetRotAngle();
00042
00043 private:
00044 void TestVector2(Vector& v);
00045 void TestTwist2(Twist& t);
00046 void TestWrench2(Wrench& w);
00047 void TestRotation2(const Vector& v,double a,double b,double c);
00048 void TestOneRotation(const std::string& msg,
00049 const KDL::Rotation& R,
00050 const double expectedAngle,
00051 const KDL::Vector& expectedAxis);
00052 void TestArbitraryRotation(const std::string& msg,
00053 const KDL::Vector& v,
00054 const double angle,
00055 const double expectedAngle,
00056 const KDL::Vector& expectedVector);
00057 void TestRangeArbitraryRotation(const std::string& msg,
00058 const KDL::Vector& v,
00059 const KDL::Vector& expectedVector);
00060
00061 };
00062
00063 #endif
00064