Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #include "mitkInternalTrackingTool.h"
00019
00020 #include "mitkTestingMacros.h"
00021
00022 #include <iostream>
00023 #include <time.h>
00024
00031 class InternalTrackingToolTestClass : public mitk::InternalTrackingTool
00032 {
00033 public:
00034 mitkClassMacro(InternalTrackingToolTestClass, InternalTrackingTool);
00038 itkNewMacro(Self);
00039 protected:
00040 InternalTrackingToolTestClass() : mitk::InternalTrackingTool()
00041 {
00042 }
00043 };
00044
00053 int mitkInternalTrackingToolTest(int , char* [])
00054 {
00055
00056 MITK_TEST_BEGIN("InternalTrackingTool")
00057
00058
00059 mitk::InternalTrackingTool::Pointer internalTrackingTool = InternalTrackingToolTestClass::New().GetPointer();
00060
00061
00062
00063
00064 MITK_TEST_CONDITION_REQUIRED(internalTrackingTool.IsNotNull(),"Testing instantiation");
00065
00066
00067 internalTrackingTool->Enable();
00068 MITK_TEST_CONDITION((internalTrackingTool->IsEnabled()==true),"Testing of Enable()");
00069
00070 srand(time(NULL));
00071
00072 mitk::Point3D position;
00073 position[0] = rand()%1000;
00074 position[1] = rand()%1000;
00075 position[2] = rand()%1000;
00076 internalTrackingTool->SetPosition(position);
00077 mitk::Point3D returnedPosition;
00078 returnedPosition.Fill(0);
00079 internalTrackingTool->GetPosition(returnedPosition);
00080 MITK_TEST_CONDITION((position==returnedPosition),"Testing of Set/GetPosition()");
00081
00082
00083 mitk::Quaternion orientation;
00084 orientation[0] = (rand()%1000)/1000.0;
00085 orientation[1] = (rand()%1000)/1000.0;
00086 orientation[2] = (rand()%1000)/1000.0;
00087 orientation[3] = (rand()%1000)/1000.0;
00088 internalTrackingTool->SetOrientation(orientation);
00089 mitk::Quaternion returnedOrientation(0,0,0,0);
00090 internalTrackingTool->GetOrientation(returnedOrientation);
00091 MITK_TEST_CONDITION((orientation==returnedOrientation),"Testing of Set/GetQuaternion()");
00092
00093
00094 float trackingError = rand()%2;
00095 internalTrackingTool->SetTrackingError(trackingError);
00096 MITK_TEST_CONDITION((internalTrackingTool->GetTrackingError()==trackingError),"Testing of Set/GetTrackingError()");
00097
00098 internalTrackingTool->SetDataValid(true);
00099 MITK_TEST_CONDITION((internalTrackingTool->IsDataValid()==true),"Testing of SetDataValid and IsDataValid() for parameter 'true'");
00100 internalTrackingTool->SetDataValid(false);
00101 MITK_TEST_CONDITION((internalTrackingTool->IsDataValid()==false),"Testing of SetDataValid and IsDataValid() for parameter 'false'");
00102
00103 internalTrackingTool->Disable();
00104 MITK_TEST_CONDITION((internalTrackingTool->IsEnabled()==false),"Testing of Disable()");
00105
00106
00107
00108
00109
00110 MITK_TEST_END();
00111 }
00112