Mercurial > hg > Members > kono > jpf-core
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 } |