comparison src/tests/gov/nasa/jpf/util/event/EventTreeTest.java @ 20:b1790909ebb1

changed EventForest to derive from EventTree, which kills three birds with one stone - guaranteeing there is a default tree, being able to initialize a concrete forest with one method (createRoot), and being able to use both EventTree and EventForest with a ForestCGFactory, i.e. without changes to the config other than the event tree class name slight refactoring of EventTree (createTree() -> createRoot()) to make it more obvious how the result is used
author Peter Mehlitz <pcmehlitz@gmail.com>
date Mon, 06 Apr 2015 12:08:03 -0700
parents 61d41facf527
children
comparison
equal deleted inserted replaced
19:9fea3d8da9aa 20:b1790909ebb1
63 63
64 //-------------------------------------------------------------------- 64 //--------------------------------------------------------------------
65 65
66 static class SimpleTree extends EventTree { 66 static class SimpleTree extends EventTree {
67 @Override 67 @Override
68 public Event createEventTree() { 68 public Event createRoot() {
69 return 69 return
70 sequence( 70 sequence(
71 event("a"), 71 event("a"),
72 alternatives( 72 alternatives(
73 event("1"), 73 event("1"),
95 } 95 }
96 96
97 //-------------------------------------------------------------------- 97 //--------------------------------------------------------------------
98 public static class CombinationTree extends EventTree { 98 public static class CombinationTree extends EventTree {
99 @Override 99 @Override
100 public Event createEventTree() { 100 public Event createRoot() {
101 return anyCombination( 101 return anyCombination(
102 event("a"), 102 event("a"),
103 event("b"), 103 event("b"),
104 event("c"), 104 event("c"),
105 event("d") 105 event("d")
136 } 136 }
137 } 137 }
138 138
139 static class SimpleCombinationTree extends EventTree { 139 static class SimpleCombinationTree extends EventTree {
140 @Override 140 @Override
141 public Event createEventTree() { 141 public Event createRoot() {
142 return anyCombination( 142 return anyCombination(
143 event("a"), 143 event("a"),
144 event("b") 144 event("b")
145 ); 145 );
146 } 146 }
157 157
158 //-------------------------------------------------------------------- 158 //--------------------------------------------------------------------
159 159
160 static class EmbeddedCombinationTree extends EventTree { 160 static class EmbeddedCombinationTree extends EventTree {
161 @Override 161 @Override
162 public Event createEventTree() { 162 public Event createRoot() {
163 return sequence( 163 return sequence(
164 event("1"), 164 event("1"),
165 anyCombination( 165 anyCombination(
166 event("a"), 166 event("a"),
167 event("b")), 167 event("b")),
180 180
181 181
182 //-------------------------------------------------------------------- 182 //--------------------------------------------------------------------
183 static class DT extends EventTree { 183 static class DT extends EventTree {
184 @Override 184 @Override
185 public Event createEventTree() { 185 public Event createRoot() {
186 return sequence( 186 return sequence(
187 event("a"), 187 event("a"),
188 alternatives( 188 alternatives(
189 event("1"), 189 event("1"),
190 sequence( 190 sequence(
213 } 213 }
214 214
215 //-------------------------------------------------------------------- 215 //--------------------------------------------------------------------
216 static class PermutationTree extends EventTree { 216 static class PermutationTree extends EventTree {
217 @Override 217 @Override
218 public Event createEventTree(){ 218 public Event createRoot(){
219 return anyPermutation( 219 return anyPermutation(
220 event("a"), 220 event("a"),
221 event("b"), 221 event("b"),
222 event("c") 222 event("c")
223 ); 223 );
244 } 244 }
245 245
246 //-------------------------------------------------------------------- 246 //--------------------------------------------------------------------
247 static class AddPathTree extends EventTree { 247 static class AddPathTree extends EventTree {
248 @Override 248 @Override
249 public Event createEventTree(){ 249 public Event createRoot(){
250 return sequence( 250 return sequence(
251 event("a"), 251 event("a"),
252 event("b"), 252 event("b"),
253 event("c") 253 event("c")
254 ); 254 );
271 } 271 }
272 272
273 //------------------------------------------------------------------- 273 //-------------------------------------------------------------------
274 static class MT1 extends EventTree { 274 static class MT1 extends EventTree {
275 @Override 275 @Override
276 public Event createEventTree(){ 276 public Event createRoot(){
277 return sequence( 277 return sequence(
278 event("a"), 278 event("a"),
279 event("b"), 279 event("b"),
280 event("c") 280 event("c")
281 ); 281 );
282 } 282 }
283 } 283 }
284 284
285 static class MT2 extends EventTree { 285 static class MT2 extends EventTree {
286 @Override 286 @Override
287 public Event createEventTree(){ 287 public Event createRoot(){
288 return sequence( 288 return sequence(
289 event("1"), 289 event("1"),
290 event("2"), 290 event("2"),
291 event("3") 291 event("3")
292 ); 292 );
293 } 293 }
294 } 294 }
295 295
296 static class MT3 extends EventTree { 296 static class MT3 extends EventTree {
297 @Override 297 @Override
298 public Event createEventTree(){ 298 public Event createRoot(){
299 return sequence( 299 return sequence(
300 event("X"), 300 event("X"),
301 event("Y") 301 event("Y")
302 ); 302 );
303 } 303 }
342 } 342 }
343 343
344 //------------------------------------------------------------------- 344 //-------------------------------------------------------------------
345 static class SMT1 extends EventTree { 345 static class SMT1 extends EventTree {
346 @Override 346 @Override
347 public Event createEventTree(){ 347 public Event createRoot(){
348 return sequence( 348 return sequence(
349 event("a"), 349 event("a"),
350 event("b") 350 event("b")
351 ); 351 );
352 } 352 }
353 } 353 }
354 354
355 static class SMT2 extends EventTree { 355 static class SMT2 extends EventTree {
356 @Override 356 @Override
357 public Event createEventTree(){ 357 public Event createRoot(){
358 return sequence( 358 return sequence(
359 event("1"), 359 event("1"),
360 event("2") 360 event("2")
361 ); 361 );
362 } 362 }
377 377
378 378
379 //------------------------------------------------------------------- 379 //-------------------------------------------------------------------
380 static class RT1 extends EventTree { 380 static class RT1 extends EventTree {
381 @Override 381 @Override
382 public Event createEventTree(){ 382 public Event createRoot(){
383 return sequence( 383 return sequence(
384 event("a"), 384 event("a"),
385 event("b") 385 event("b")
386 ); 386 );
387 } 387 }
388 } 388 }
389 389
390 static class RT2 extends EventTree { 390 static class RT2 extends EventTree {
391 @Override 391 @Override
392 public Event createEventTree(){ 392 public Event createRoot(){
393 return sequence( 393 return sequence(
394 event("1"), 394 event("1"),
395 event("2") 395 event("2")
396 ); 396 );
397 } 397 }