source: trunk/quest-core-tasktrees-test/src/test/java/de/ugoe/cs/quest/tasktrees/temporalrelation/DefaultIterationDetectionRuleTest.java @ 655

Last change on this file since 655 was 655, checked in by pharms, 12 years ago
  • removed old copyright file header
File size: 9.8 KB
Line 
1package de.ugoe.cs.quest.tasktrees.temporalrelation;
2
3import org.junit.Test;
4
5import de.ugoe.cs.quest.eventcore.IEventTarget;
6import de.ugoe.cs.quest.eventcore.IEventType;
7import de.ugoe.cs.quest.tasktrees.testutils.DummyGUIElement;
8import de.ugoe.cs.quest.tasktrees.testutils.DummyInteraction;
9import de.ugoe.cs.quest.tasktrees.testutils.TaskTreeChecker;
10
11/**
12 * TODO comment
13 *
14 * @version $Revision: $ $Date: 28.04.2012$
15 * @author 2012, last modified by $Author: patrick$
16 */
17public class DefaultIterationDetectionRuleTest extends AbstractTemporalRelationshipTC {
18
19    /**
20     *
21     */
22    @Test
23    public void testInteractionIterationDetection() throws Exception {
24        IEventTarget element1 = new DummyGUIElement("elem1");
25        IEventType event1 = new DummyInteraction("bla", 1);
26        simulateEvent(event1, element1);
27        new TaskTreeChecker().assertTaskTree
28            ("Sequence sequence1 {" +
29             "  Event bla {}" +
30             "}", getTaskTree());
31
32        simulateEvent(event1, element1);
33        new TaskTreeChecker().assertTaskTree
34            ("Sequence sequence1 {" +
35             "  Iteration iteration1 {" +
36             "    Event bla {}" +
37             "  }" +
38             "}", getTaskTree());
39
40        simulateEvent(event1, element1);
41        new TaskTreeChecker().assertTaskTree
42            ("Sequence sequence1 {" +
43             "  Iteration iteration1 {" +
44             "    Event bla {}" +
45             "  }" +
46             "}", getTaskTree());
47
48        for (int i = 0; i < 10; i++) {
49            simulateEvent(event1, element1);
50        }
51
52        new TaskTreeChecker().assertTaskTree
53            ("Sequence sequence1 {" +
54             "  Iteration iteration1 {" +
55             "    Event bla {}" +
56             "  }" +
57             "}", getTaskTree());
58
59        // now test with preceding and trailing other events
60        IEventType event2 = new DummyInteraction("bli", 1);
61        IEventType event3 = new DummyInteraction("blup", 1);
62
63        simulateEvent(event2, element1);
64        simulateEvent(event3, element1);
65        for (int i = 0; i < 10; i++) {
66            simulateEvent(event1, element1);
67        }
68        simulateEvent(event3, element1);
69        simulateEvent(event2, element1);
70
71        new TaskTreeChecker().assertTaskTree
72            ("Sequence sequence1 {" +
73             "  Iteration iteration1 {" +
74             "    Event bla {}" +
75             "  }" +
76             "  Event bli {}" +
77             "  Event blup {}" +
78             "  Iteration iteration2 {" +
79             "    Event bla {}" +
80             "  }" +
81             "  Event blup {}" +
82             "  Event bli {}" +
83             "}", getTaskTree());
84
85        // now test with iterations of iterations
86
87        for (int i = 0; i < 10; i++) {
88            for (int j = 0; j < 5; j++) {
89                simulateEvent(event1, element1);
90            }
91            for (int j = 0; j < 5; j++) {
92                simulateEvent(event2, element1);
93            }
94            for (int j = 0; j < 5; j++) {
95                simulateEvent(event3, element1);
96            }
97        }
98
99        new TaskTreeChecker().assertTaskTree
100            ("Sequence sequence1 {" +
101             "  Iteration iteration1 {" +
102             "    Event bla {}" +
103             "  }" +
104             "  Event bli {}" +
105             "  Event blup {}" +
106             "  Iteration iteration2 {" +
107             "    Event bla {}" +
108             "  }" +
109             "  Event blup {}" +
110             "  Event bli {}" +
111             "  Iteration iteration3 {" +
112             "    Sequence sequence2 {" +
113             "      Iteration iteration4 {" +
114             "        Event bla {}" +
115             "      }" +
116             "      Iteration iteration5 {" +
117             "        Event bli {}" +
118             "      }" +
119             "      Iteration iteration6 {" +
120             "        Event blup {}" +
121             "      }" +
122             "    }" +
123             "  }" +
124             "}", getTaskTree());
125
126    }
127
128    /**
129     *
130     */
131    @Test
132    public void testSequenceIterationDetection() throws Exception {
133        IEventTarget element1 = new DummyGUIElement("elem1");
134        IEventType event1 = new DummyInteraction("bla", 1);
135        IEventType event2 = new DummyInteraction("bli", 1);
136        IEventType event3 = new DummyInteraction("blup", 1);
137        simulateEvent(event1, element1);
138        simulateEvent(event2, element1);
139        simulateEvent(event3, element1);
140        new TaskTreeChecker().assertTaskTree
141            ("Sequence sequence1 {" +
142             "  Event bla {}" +
143             "  Event bli {}" +
144             "  Event blup {}" +
145             "}", getTaskTree());
146
147        simulateEvent(event1, element1);
148        simulateEvent(event2, element1);
149        simulateEvent(event3, element1);
150        new TaskTreeChecker().assertTaskTree
151            ("Sequence sequence1 {" +
152             "  Iteration iteration1 {" +
153             "    Sequence sequence2 {" +
154             "      Event bla {}" +
155             "      Event bli {}" +
156             "      Event blup {}" +
157             "    }" +
158             "  }" +
159             "}", getTaskTree());
160
161        simulateEvent(event1, element1);
162        simulateEvent(event2, element1);
163        simulateEvent(event3, element1);
164        new TaskTreeChecker().assertTaskTree
165            ("Sequence sequence1 {" +
166             "  Iteration iteration1 {" +
167             "    Sequence sequence2 {" +
168             "      Event bla {}" +
169             "      Event bli {}" +
170             "      Event blup {}" +
171             "    }" +
172             "  }" +
173             "}", getTaskTree());
174
175        for (int i = 0; i < 10; i++) {
176            simulateEvent(event1, element1);
177            simulateEvent(event2, element1);
178            simulateEvent(event3, element1);
179        }
180
181        new TaskTreeChecker().assertTaskTree
182            ("Sequence sequence1 {" +
183             "  Iteration iteration1 {" +
184             "    Sequence sequence2 {" +
185             "      Event bla {}" +
186             "      Event bli {}" +
187             "      Event blup {}" +
188             "    }" +
189             "  }" +
190             "}", getTaskTree());
191
192        // now test with preceding and trailing other events
193        IEventType event4 = new DummyInteraction("ble", 1);
194        IEventType event5 = new DummyInteraction("blo", 1);
195        IEventType event6 = new DummyInteraction("blu", 1);
196        simulateEvent(event4, element1);
197        simulateEvent(event5, element1);
198        simulateEvent(event6, element1);
199        for (int i = 0; i < 10; i++) {
200            simulateEvent(event1, element1);
201            simulateEvent(event2, element1);
202            simulateEvent(event3, element1);
203        }
204        simulateEvent(event6, element1);
205        simulateEvent(event5, element1);
206        simulateEvent(event4, element1);
207
208        new TaskTreeChecker().assertTaskTree
209            ("Sequence sequence1 {" +
210             "  Iteration iteration1 {" +
211             "    Sequence sequence2 {" +
212             "      Event bla {}" +
213             "      Event bli {}" +
214             "      Event blup {}" +
215             "    }" +
216             "  }" +
217             "  Event ble {}" +
218             "  Event blo {}" +
219             "  Event blu {}" +
220             "  Iteration iteration2 {" +
221             "    Sequence sequence3 {" +
222             "      Event bla {}" +
223             "      Event bli {}" +
224             "      Event blup {}" +
225             "    }" +
226             "  }" +
227             "  Event blu {}" +
228             "  Event blo {}" +
229             "  Event ble {}" +
230             "}", getTaskTree());
231
232        // now test with iterations of iterations
233        for (int i = 0; i < 10; i++) {
234            for (int j = 0; j < 5; j++) {
235                simulateEvent(event1, element1);
236                simulateEvent(event2, element1);
237                simulateEvent(event3, element1);
238            }
239            for (int j = 0; j < 5; j++) {
240                simulateEvent(event2, element1);
241                simulateEvent(event1, element1);
242                simulateEvent(event3, element1);
243            }
244            for (int j = 0; j < 5; j++) {
245                simulateEvent(event1, element1);
246                simulateEvent(event2, element1);
247                simulateEvent(event3, element1);
248            }
249        }
250
251        new TaskTreeChecker().assertTaskTree
252            ("Sequence sequence1 {" +
253             "  Iteration iteration1 {" +
254             "    Sequence sequence2 {" +
255             "      Event bla {}" +
256             "      Event bli {}" +
257             "      Event blup {}" +
258             "    }" +
259             "  }" +
260             "  Event ble {}" +
261             "  Event blo {}" +
262             "  Event blu {}" +
263             "  Iteration iteration2 {" +
264             "    Sequence sequence3 {" +
265             "      Event bla {}" +
266             "      Event bli {}" +
267             "      Event blup {}" +
268             "    }" +
269             "  }" +
270             "  Event blu {}" +
271             "  Event blo {}" +
272             "  Event ble {}" +
273             "  Iteration iteration3 {" +
274             "    Sequence sequence4 {" +
275             "      Iteration iteration4 {" +
276             "        Sequence sequence4 {" +
277             "          Event bla {}" +
278             "          Event bli {}" +
279             "          Event blup {}" +
280             "        }" +
281             "      }" +
282             "      Iteration iteration5 {" +
283             "        Sequence sequence5 {" +
284             "          Event bli {}" +
285             "          Event bla {}" +
286             "          Event blup {}" +
287             "        }" +
288             "      }" +
289             "      Iteration iteration6 {" +
290             "        Sequence sequence6 {" +
291             "          Event bla {}" +
292             "          Event bli {}" +
293             "          Event blup {}" +
294             "        }" +
295             "      }" +
296             "    }" +
297             "  }" +
298             "}", getTaskTree());
299    }
300
301}
Note: See TracBrowser for help on using the repository browser.