pd_alg_lrm_test.h

Go to the documentation of this file.
00001 /** @file pd_alg_lrm_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_LRM_TEST_H
00011 #define FAUDES_PD_ALG_LRM_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 Desc11 with a terminal at the beginning of afterDot
00021  */
00022 void TestDesc11Terminal();
00023 
00024 /**
00025  * Test Desc11 with a nonterminal at the beginning of afterDot
00026  */
00027 void TestDesc11Nonterminal();
00028 
00029 /**
00030  * Test Desc with some configurations
00031  */
00032 void TestDescSelectedConfigs();
00033 
00034 /**
00035  * Test PassesX by shifting the dot over a nonterminal.
00036  */
00037 void TestPassesXNonterminal();
00038 
00039 /**
00040  * Test PassesX by shifting the dot over a terminal.
00041  */
00042 void TestPassesXTerminal();
00043 
00044 /**
00045  * Test PassesX by trying to shift the dot over nothing or a nonexistent symbol.
00046  */
00047 void TestPassesXNoShift();
00048 
00049 /**
00050  * Test if Lrm1 finds the correct following configuration set when only one must be
00051  * found.
00052  */
00053 void TestLrm1FindOne();
00054 
00055 /**
00056  * Test if Lrm1 finds three following configuration sets when three must be
00057  * found.
00058  */
00059 void TestLrm1FindThree();
00060 
00061 /**
00062  * Test if LrmLoop generates the correct number of transitions and states for 
00063  * the "$ a^n b $" grammar
00064  */
00065 void TestLrmLoopAnB();
00066 
00067 /**
00068  * Test Desc Initial if it finds the two correct starting configurations
00069  */
00070 void TestDescInitialFindTwo();
00071 
00072 /**
00073  * Test if Lrm generates a GotoMachine with the correct number of transitions and
00074  * states for the "$ a^n b $" grammar
00075  */
00076 void TestLrmGr1();
00077 
00078 /**
00079  * Test if Lrm generates a GotoMachine with the correct number of transitions and
00080  * states for a specific. //TODO dont know what to expecet as a result
00081  */
00082 void TestLrmGr2();
00083 
00084 /**
00085  * Augment a grammar which should result in a successful augmentation
00086  */
00087 void TestAugSuccess();
00088 
00089 /**
00090  * All Desc11 Tests
00091  */
00092 void TestDesc11();
00093 
00094 /**
00095  * All Desc Tests. Includes Testing Desc1 since Desc1 is just an iterator.
00096  */
00097 void TestDesc();
00098 
00099 /**
00100  * All PassesX Tests.
00101  */
00102 void TestPassesX();
00103 
00104 /**
00105  * All Lrm1 Tests.
00106  */
00107 void TestLrm1();
00108 
00109 /**
00110  * All LrmLoop Tests
00111  */
00112 void TestLrmLoop();
00113 
00114 /**
00115  * All DescInitial Tests
00116  */
00117 void TestDescInitial();
00118 
00119 /**
00120  * All Lrm Tests
00121  */
00122 void TestLrm();
00123 
00124 /**
00125  * All Aug Tests
00126  */
00127 void TestAug();
00128 
00129 } // namespace faudes
00130 
00131 #endif

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