pd_alg_nb_sub_b_test.h

Go to the documentation of this file.
00001 /** @file pd_alg_nb_sub_b_test.h  Unit Tests */
00002 
00003 
00004 /* Pushdown plugin for FAU Discrete Event Systems Library (libfaudes)
00005 
00006    Copyright (C) 2013  Stefan Jacobi, Sven Schneider, Anne-Kathrin Hess
00007 
00008 */
00009 
00010 #ifndef FAUDES_PD_ALG_NB_SUB_B_TEST_H
00011 #define FAUDES_PD_ALG_NB_SUB_B_TEST_H
00012 
00013 #include "corefaudes.h"
00014 #include "pd_include.h"
00015 #include "pd_test_util.h"
00016 
00017 namespace faudes {
00018 
00019 /**
00020  * Test if all states were renamed correctly (merge attribute is set correctly).
00021  */
00022 void TestRenQRenaming();
00023 
00024 /**
00025  * Test if the number of states did not change.
00026  */
00027 void TestRenQNumberOfStates();
00028 
00029 /**
00030  * Test if all stack symbols were renamed correctly
00031  */
00032 void TestRenGRenamingStackSymbols();
00033 
00034 /**
00035  * Test if the number of stack symbols did not change.
00036  */
00037 void TestRenGNumberOfStackSymbols();
00038 
00039 /**
00040  * Test if the stack symbols in pop and push of transitions were changed correctly
00041  */
00042 void TestRenGRenamingTransitions();
00043 
00044 /**
00045  * Tests if there are any lambda popping edges left
00046  */
00047 void TestRep0NoLambdaPop();
00048 
00049 /**
00050  * Test if resulting generator has a transition able to pop all stack symbols,
00051  * but only if the orignal generator had at least one lambda transition
00052  */
00053 void TestRep0AllExpectingTransition();
00054 
00055 /**
00056  * Test for the right number of transitions and states in the generator after
00057  * applying Rep2
00058  */
00059 void TestRep2NumberOfStatesTransitions();
00060 
00061 /**
00062  * Tests if the MergeStateAnnotations have all been set to "old".
00063  */
00064 void TestRep2Renaming();
00065 
00066 /**
00067  * Test if all transitions are either read only, pop only or push only
00068  */
00069 void TestRppReadPopPushOnly();
00070   
00071 /**
00072  * Test if the number of transitions and states is correct after calling Rpp
00073  */
00074 void TestRppNumberStatesTransitions();
00075 
00076 /**
00077  * Test if the states are split into active and passive states and if the number of
00078  * states has been doubled.
00079  */
00080 void TestNdaActivePassive();
00081 
00082 /**
00083  * Test if transition start and end states are set as expected
00084  */
00085 void TestNdaTransitions();
00086 
00087 /**
00088  * All RenQ Tests
00089  */
00090 void TestRenQ();
00091 
00092 /**
00093  * All RenG tests.
00094  */
00095 void TestRenG();
00096 
00097 /**
00098  * All Rep0 tests
00099  */
00100 void TestRep0();
00101 
00102 /**
00103  * All Rpp tests
00104  */
00105 void TestRpp();
00106 
00107 /**
00108  * All Rep2 tests
00109  */
00110 void TestRep2();
00111 
00112 /**
00113  * All Nda tests
00114  */
00115 void TestNda();
00116 
00117 
00118 } // namespace faudes
00119 
00120 #endif

libFAUDES 2.23h --- 2014.04.03 --- c++ api documentaion by doxygen