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
00019 #include <mitkTransition.h>
00020 #include <mitkAction.h>
00021 #include <mitkState.h>
00022
00023 #include <fstream>
00024 int mitkTransitionTest(int , char* [])
00025 {
00026 int nextStateId = 10;
00027 int eventId = 100;
00028
00029
00030 itk::WeakPointer<mitk::Transition> transition = new mitk::Transition("transitionname", nextStateId, eventId);
00031
00032
00033 std::cout << "Check StateId: ";
00034 if (transition->GetNextStateId()!=nextStateId)
00035 {
00036 std::cout<<"[FAILED]"<<std::endl;
00037 return EXIT_FAILURE;
00038 }
00039 std::cout<<"[PASSED]"<<std::endl;
00040
00041
00042 std::cout << "Check EventId: ";
00043 if (transition->GetEventId()!=eventId || !transition->IsEvent(eventId))
00044 {
00045 std::cout<<"[FAILED]"<<std::endl;
00046 return EXIT_FAILURE;
00047 }
00048 std::cout<<"[PASSED]"<<std::endl;
00049
00050 unsigned int count = 1;
00051
00052 mitk::Action::Pointer firstAction = mitk::Action::New(count);
00053 transition->AddAction(firstAction);
00054
00055
00056 std::cout << "Check ActionCount after first addition of an action: ";
00057 if (transition->GetActionCount() != count)
00058 {
00059 std::cout<<"[FAILED]"<<std::endl;
00060 return EXIT_FAILURE;
00061 }
00062 std::cout<<"[PASSED]"<<std::endl;
00063
00064 ++count;
00065
00066
00067 mitk::Action::Pointer secondAction = mitk::Action::New(count);
00068 transition->AddAction(secondAction);
00069
00070
00071 std::cout << "check action Count after second addition of an action: ";
00072 if (transition->GetActionCount() != count)
00073 {
00074 std::cout<<"[FAILED]"<<std::endl;
00075 return EXIT_FAILURE;
00076 }
00077 std::cout<<"[PASSED]"<<std::endl;
00078
00079 count = 1;
00080
00081
00082 std::cout << "Check ActionIterators: ";
00083 mitk::Transition::ActionVectorIterator iter = transition->GetActionBeginIterator();
00084 mitk::Transition::ActionVectorConstIterator end = transition->GetActionEndIterator();
00085 while (iter != end)
00086 {
00087 if((*iter)->GetActionId()!=(int)count)
00088 {
00089 std::cout<<"[FAILED]"<<std::endl;
00090 return EXIT_FAILURE;
00091 }
00092 ++count;
00093 ++iter;
00094 }
00095 std::cout<<"[PASSED]"<<std::endl;
00096
00097
00098 std::cout << "Check setting a statepointer and reading it again: ";
00099 int stateId = 10000;
00100 mitk::State::Pointer state = mitk::State::New("statename", stateId);
00101 transition->SetNextState(state);
00102 if (transition->GetNextState()!=state)
00103 {
00104 std::cout<<"[FAILED]"<<std::endl;
00105 return EXIT_FAILURE;
00106 }
00107 std::cout<<"[PASSED]"<<std::endl;
00108
00109
00110 delete transition;
00111
00112
00113 std::cout<<"[ALL PASSED]"<<std::endl;
00114
00115 std::cout<<"[TEST DONE]"<<std::endl;
00116 return EXIT_SUCCESS;
00117 }