pd_alg_lrm_test.h
Go to the documentation of this file.
1 /** @file pd_alg_lrm_test.h Unit Tests */
2 
3 
4 /* Pushdown plugin for FAU Discrete Event Systems Library (libfaudes)
5 
6  Copyright (C) 2013 Stefan Jacobi, Sven Schneider, Anne-Kathrin Hess
7 
8 */
9 
10 #ifndef FAUDES_PD_ALG_LRM_TEST_H
11 #define FAUDES_PD_ALG_LRM_TEST_H
12 
13 #include "corefaudes.h"
14 #include "pd_include.h"
15 #include "pd_test_util.h"
16 
17 namespace faudes {
18 
19 /**
20  * Test Desc11 with a terminal at the beginning of afterDot
21  */
22 void TestDesc11Terminal();
23 
24 /**
25  * Test Desc11 with a nonterminal at the beginning of afterDot
26  */
28 
29 /**
30  * Test Desc with some configurations
31  */
33 
34 /**
35  * Test PassesX by shifting the dot over a nonterminal.
36  */
38 
39 /**
40  * Test PassesX by shifting the dot over a terminal.
41  */
42 void TestPassesXTerminal();
43 
44 /**
45  * Test PassesX by trying to shift the dot over nothing or a nonexistent symbol.
46  */
47 void TestPassesXNoShift();
48 
49 /**
50  * Test if Lrm1 finds the correct following configuration set when only one must be
51  * found.
52  */
53 void TestLrm1FindOne();
54 
55 /**
56  * Test if Lrm1 finds three following configuration sets when three must be
57  * found.
58  */
59 void TestLrm1FindThree();
60 
61 /**
62  * Test if LrmLoop generates the correct number of transitions and states for
63  * the "$ a^n b $" grammar
64  */
65 void TestLrmLoopAnB();
66 
67 /**
68  * Test Desc Initial if it finds the two correct starting configurations
69  */
71 
72 /**
73  * Test if Lrm generates a GotoMachine with the correct number of transitions and
74  * states for the "$ a^n b $" grammar
75  */
76 void TestLrmGr1();
77 
78 /**
79  * Test if Lrm generates a GotoMachine with the correct number of transitions and
80  * states for a specific. //TODO dont know what to expecet as a result
81  */
82 void TestLrmGr2();
83 
84 /**
85  * Augment a grammar which should result in a successful augmentation
86  */
87 void TestAugSuccess();
88 
89 /**
90  * All Desc11 Tests
91  */
92 void TestDesc11();
93 
94 /**
95  * All Desc Tests. Includes Testing Desc1 since Desc1 is just an iterator.
96  */
97 void TestDesc();
98 
99 /**
100  * All PassesX Tests.
101  */
102 void TestPassesX();
103 
104 /**
105  * All Lrm1 Tests.
106  */
107 void TestLrm1();
108 
109 /**
110  * All LrmLoop Tests
111  */
112 void TestLrmLoop();
113 
114 /**
115  * All DescInitial Tests
116  */
117 void TestDescInitial();
118 
119 /**
120  * All Lrm Tests
121  */
122 void TestLrm();
123 
124 /**
125  * All Aug Tests
126  */
127 void TestAug();
128 
129 } // namespace faudes
130 
131 #endif

libFAUDES 2.24g --- 2014.09.15 --- c++ api documentaion by doxygen