Bug 7785: Remove flows with invalid action
[integration/test.git] / csit / suites / openflowplugin / Flows_Additional_TCs / Stat_Manager_extended / 020_SM_sal_add_upd_del_flows.robot
1 *** Settings ***
2 Documentation     Test suite for Stats Manager flows collection
3 Suite Setup       Initialization Phase
4 Suite Teardown    Delete All Sessions
5 Test Template     Check Datastore Presence
6 Library           OperatingSystem
7 Library           Collections
8 Library           XML
9 Library           SSHLibrary
10 Resource          ../../../../libraries/FlowLib.robot
11 Library           ../../../../libraries/XmlComparator.py
12 Variables         ../../../../variables/Variables.py
13 Library           RequestsLibrary
14 Library           ../../../../libraries/Common.py
15
16 *** Variables ***
17 ${flow_update_time}    3s
18 ${XmlsDir}        ${CURDIR}/../../../../variables/xmls
19 ${switch_idx}     1
20 ${switch_name}    s${switch_idx}
21 @{flowlist0}      f1.xml    f2.xml    f3.xml    f4.xml    f5.xml    f6.xml    f7.xml
22 ...               f8.xml    f9.xml    f10.xml    f11.xml    f14.xml    f15.xml    f16.xml
23 ...               f17.xml    f18.xml    f19.xml    f20.xml    f21.xml    f22.xml    f23.xml
24 ...               f24.xml    f25.xml    f31.xml    f36.xml    f38.xml    f43.xml    f45.xml
25 ...               f101.xml    f102.xml    f103.xml    f104.xml    f105.xml    f106.xml    f107.xml
26 ...               f108.xml    f109.xml    f110.xml    f113.xml    f201.xml    f202.xml    f203.xml
27 ...               f204.xml    f205.xml    f206.xml    f209.xml    f214.xml    f218.xml    f219.xml
28 ...               f220.xml
29
30 *** Test Cases ***
31 Test Add Flows Group 0
32     [Documentation]    Add all flows and waits for SM to collect data
33     [Template]    NONE
34     : FOR    ${flowfile}    IN    @{flowlist0}
35     \    Log    ${flowfile}
36     \    Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
37     \    Run Keyword And Continue On Failure    Add Flow Via RPC    ${switch_idx}    ${xmlroot}
38     # Lets wait for ofp to collect stats
39     ${flows}=    Get Length    ${flowlist0}
40     Wait Until Keyword Succeeds    30s    2s    FlowLib.Check Flow Stats Are Available    openflow:1    ${flows}
41     # Show switch content (for debug purposes if needed)
42     Write    dpctl dump-flows -O OpenFlow13
43     Read Until    mininet>
44
45 Test Is Flow 1 Added
46     f1.xml    ${False}    ${True}    ${False}
47
48 Test Is Flow 2 Added
49     f2.xml    ${False}    ${True}    ${False}
50
51 Test Is Flow 3 Added
52     f3.xml    ${False}    ${True}    ${False}
53
54 Test Is Flow 4 Added
55     f4.xml    ${False}    ${True}    ${False}
56
57 Test Is Flow 5 Added
58     f5.xml    ${False}    ${True}    ${False}
59
60 Test Is Flow 6 Added
61     f6.xml    ${False}    ${True}    ${False}
62
63 Test Is Flow 7 Added
64     f7.xml    ${False}    ${True}    ${False}
65
66 Test Is Flow 8 Added
67     f8.xml    ${False}    ${True}    ${False}
68
69 Test Is Flow 9 Added
70     f9.xml    ${False}    ${True}    ${False}
71
72 Test Is Flow 10 Added
73     f10.xml    ${False}    ${True}    ${False}
74
75 Test Is Flow 11 Added
76     f11.xml    ${False}    ${True}    ${False}
77
78 Test Is Flow 15 Added
79     f15.xml    ${False}    ${True}    ${False}
80
81 Test Is Flow 16 Added
82     f16.xml    ${False}    ${True}    ${False}
83
84 Test Is Flow 17 Added
85     f17.xml    ${False}    ${True}    ${False}
86
87 Test Is Flow 18 Added
88     f18.xml    ${False}    ${True}    ${False}
89
90 Test Is Flow 19 Added
91     f19.xml    ${False}    ${True}    ${False}
92
93 Test Is Flow 20 Added
94     f20.xml    ${False}    ${True}    ${False}
95
96 Test Is Flow 21 Added
97     f21.xml    ${False}    ${True}    ${False}
98
99 Test Is Flow 22 Added
100     f22.xml    ${False}    ${True}    ${False}
101
102 Test Is Flow 23 Added
103     f23.xml    ${False}    ${True}    ${False}
104
105 Test Is Flow 24 Added
106     f24.xml    ${False}    ${True}    ${False}
107
108 Test Is Flow 25 Added
109     f25.xml    ${False}    ${True}    ${False}
110
111 Test Is Flow 31 Added
112     f31.xml    ${False}    ${True}    ${False}
113
114 Test Is Flow 36 Added
115     f36.xml    ${False}    ${True}    ${False}
116
117 Test Is Flow 38 Added
118     f38.xml    ${False}    ${True}    ${False}
119
120 Test Is Flow 43 Added
121     f43.xml    ${False}    ${True}    ${False}
122
123 Test Is Flow 45 Added
124     f45.xml    ${False}    ${True}    ${False}
125
126 Test Is Flow 101 Added
127     f101.xml    ${False}    ${True}    ${False}
128
129 Test Is Flow 102 Added
130     f102.xml    ${False}    ${True}    ${False}
131
132 Test Is Flow 103 Added
133     f103.xml    ${False}    ${True}    ${False}
134
135 Test Is Flow 104 Added
136     f104.xml    ${False}    ${True}    ${False}
137
138 Test Is Flow 105 Added
139     f105.xml    ${False}    ${True}    ${False}
140
141 Test Is Flow 106 Added
142     f106.xml    ${False}    ${True}    ${False}
143
144 Test Is Flow 107 Added
145     f107.xml    ${False}    ${True}    ${False}
146
147 Test Is Flow 108 Added
148     f108.xml    ${False}    ${True}    ${False}
149
150 Test Is Flow 109 Added
151     f109.xml    ${False}    ${True}    ${False}
152
153 Test Is Flow 110 Added
154     f110.xml    ${False}    ${True}    ${False}
155
156 Test Is Flow 113 Added
157     f113.xml    ${False}    ${True}    ${False}
158
159 Test Is Flow 201 Added
160     f201.xml    ${False}    ${True}    ${False}
161
162 Test Is Flow 202 Added
163     f202.xml    ${False}    ${True}    ${False}
164
165 Test Is Flow 203 Added
166     f203.xml    ${False}    ${True}    ${False}
167
168 Test Is Flow 204 Added
169     f204.xml    ${False}    ${True}    ${False}
170
171 Test Is Flow 205 Added
172     f205.xml    ${False}    ${True}    ${False}
173
174 Test Is Flow 206 Added
175     f206.xml    ${False}    ${True}    ${False}
176
177 Test Is Flow 209 Added
178     f209.xml    ${False}    ${True}    ${False}
179
180 Test Is Flow 214 Added
181     f214.xml    ${False}    ${True}    ${False}
182
183 Test Is Flow 218 Added
184     f218.xml    ${False}    ${True}    ${False}
185
186 Test Is Flow 219 Added
187     f219.xml    ${False}    ${True}    ${False}
188
189 Test Is Flow 220 Added
190     f220.xml    ${False}    ${True}    ${False}
191
192 Test Update Flows Group 0
193     [Documentation]    Update all flows and waits for SM to collect data
194     [Template]    NONE
195     : FOR    ${flowfile}    IN    @{flowlist0}
196     \    Log    ${flowfile}
197     \    Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
198     \    Run Keyword And Continue On Failure    Update Flow Via RPC    ${switch_idx}    ${data}    ${upddata}
199     # Lets wait for ofp to collect stats
200     Sleep    ${flow_update_time}
201     # Show switch content (for debug purposes if needed)
202     Write    dpctl dump-flows -O OpenFlow13
203     Read Until    mininet>
204
205 Test Is Flow 1 Updated
206     f1.xml    ${False}    ${True}    ${True}
207
208 Test Is Flow 2 Updated
209     f2.xml    ${False}    ${True}    ${True}
210
211 Test Is Flow 3 Updated
212     f3.xml    ${False}    ${True}    ${True}
213
214 Test Is Flow 4 Updated
215     f4.xml    ${False}    ${True}    ${True}
216
217 Test Is Flow 5 Updated
218     f5.xml    ${False}    ${True}    ${True}
219
220 Test Is Flow 6 Updated
221     f6.xml    ${False}    ${True}    ${True}
222
223 Test Is Flow 7 Updated
224     f7.xml    ${False}    ${True}    ${True}
225
226 Test Is Flow 8 Updated
227     f8.xml    ${False}    ${True}    ${True}
228
229 Test Is Flow 9 Updated
230     f9.xml    ${False}    ${True}    ${True}
231
232 Test Is Flow 10 Updated
233     f10.xml    ${False}    ${True}    ${True}
234
235 Test Is Flow 11 Updated
236     f11.xml    ${False}    ${True}    ${True}
237
238 Test Is Flow 14 Updated
239     f14.xml    ${False}    ${True}    ${True}
240
241 Test Is Flow 15 Updated
242     f15.xml    ${False}    ${True}    ${True}
243
244 Test Is Flow 16 Updated
245     f16.xml    ${False}    ${True}    ${True}
246
247 Test Is Flow 17 Updated
248     f17.xml    ${False}    ${True}    ${True}
249
250 Test Is Flow 18 Updated
251     f18.xml    ${False}    ${True}    ${True}
252
253 Test Is Flow 19 Updated
254     f19.xml    ${False}    ${True}    ${True}
255
256 Test Is Flow 20 Updated
257     f20.xml    ${False}    ${True}    ${True}
258
259 Test Is Flow 21 Updated
260     f21.xml    ${False}    ${True}    ${True}
261
262 Test Is Flow 22 Updated
263     f22.xml    ${False}    ${True}    ${True}
264
265 Test Is Flow 23 Updated
266     f23.xml    ${False}    ${True}    ${True}
267
268 Test Is Flow 24 Updated
269     f24.xml    ${False}    ${True}    ${True}
270
271 Test Is Flow 25 Updated
272     f25.xml    ${False}    ${True}    ${True}
273
274 Test Is Flow 31 Updated
275     f31.xml    ${False}    ${True}    ${True}
276
277 Test Is Flow 36 Updated
278     f36.xml    ${False}    ${True}    ${True}
279
280 Test Is Flow 38 Updated
281     f38.xml    ${False}    ${True}    ${True}
282
283 Test Is Flow 43 Updated
284     f43.xml    ${False}    ${True}    ${True}
285
286 Test Is Flow 45 Updated
287     f45.xml    ${False}    ${True}    ${True}
288
289 Test Is Flow 101 Updated
290     f101.xml    ${False}    ${True}    ${True}
291
292 Test Is Flow 102 Updated
293     f102.xml    ${False}    ${True}    ${True}
294
295 Test Is Flow 103 Updated
296     f103.xml    ${False}    ${True}    ${True}
297
298 Test Is Flow 104 Updated
299     f104.xml    ${False}    ${True}    ${True}
300
301 Test Is Flow 105 Updated
302     f105.xml    ${False}    ${True}    ${True}
303
304 Test Is Flow 106 Updated
305     f106.xml    ${False}    ${True}    ${True}
306
307 Test Is Flow 107 Updated
308     f107.xml    ${False}    ${True}    ${True}
309
310 Test Is Flow 108 Updated
311     f108.xml    ${False}    ${True}    ${True}
312
313 Test Is Flow 109 Updated
314     f109.xml    ${False}    ${True}    ${True}
315
316 Test Is Flow 110 Updated
317     f110.xml    ${False}    ${True}    ${True}
318
319 Test Is Flow 113 Updated
320     f113.xml    ${False}    ${True}    ${True}
321
322 Test Is Flow 201 Updated
323     f201.xml    ${False}    ${True}    ${True}
324
325 Test Is Flow 202 Updated
326     f202.xml    ${False}    ${True}    ${True}
327
328 Test Is Flow 203 Updated
329     f203.xml    ${False}    ${True}    ${True}
330
331 Test Is Flow 204 Updated
332     f204.xml    ${False}    ${True}    ${True}
333
334 Test Is Flow 205 Updated
335     f205.xml    ${False}    ${True}    ${True}
336
337 Test Is Flow 206 Updated
338     f206.xml    ${False}    ${True}    ${True}
339
340 Test Is Flow 209 Updated
341     f209.xml    ${False}    ${True}    ${True}
342
343 Test Is Flow 214 Updated
344     f214.xml    ${False}    ${True}    ${True}
345
346 Test Is Flow 218 Updated
347     f218.xml    ${False}    ${True}    ${True}
348
349 Test Is Flow 219 Updated
350     f219.xml    ${False}    ${True}    ${True}
351
352 Test Is Flow 220 Updated
353     f220.xml    ${False}    ${True}    ${True}
354
355 Test Delete Flows Group 0
356     [Documentation]    Delete all flows and waits for SM to collect data
357     [Template]    NONE
358     : FOR    ${flowfile}    IN    @{flowlist0}
359     \    Log    ${flowfile}
360     \    Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
361     \    Run Keyword And Continue On Failure    Delete Flow Via RPC    ${switch_idx}    ${xmlroot}
362     # Lets wait for ofp to collect stats
363     Sleep    ${flow_update_time}
364     # Show switch content (for debug purposes if needed)
365     Write    dpctl dump-flows -O OpenFlow13
366     Read Until    mininet>
367
368 Test Is Flow 1 Deleted
369     f1.xml    ${False}    ${False}    ${True}
370
371 Test Is Flow 2 Deleted
372     f2.xml    ${False}    ${False}    ${True}
373
374 Test Is Flow 3 Deleted
375     f3.xml    ${False}    ${False}    ${True}
376
377 Test Is Flow 4 Deleted
378     f4.xml    ${False}    ${False}    ${True}
379
380 Test Is Flow 5 Deleted
381     f5.xml    ${False}    ${False}    ${True}
382
383 Test Is Flow 6 Deleted
384     f6.xml    ${False}    ${False}    ${True}
385
386 Test Is Flow 7 Deleted
387     f7.xml    ${False}    ${False}    ${True}
388
389 Test Is Flow 8 Deleted
390     f8.xml    ${False}    ${False}    ${True}
391
392 Test Is Flow 9 Deleted
393     f9.xml    ${False}    ${False}    ${True}
394
395 Test Is Flow 10 Deleted
396     f10.xml    ${False}    ${False}    ${True}
397
398 Test Is Flow 11 Deleted
399     f11.xml    ${False}    ${False}    ${True}
400
401 Test Is Flow 14 Deleted
402     f14.xml    ${False}    ${False}    ${True}
403
404 Test Is Flow 15 Deleted
405     f15.xml    ${False}    ${False}    ${True}
406
407 Test Is Flow 16 Deleted
408     f16.xml    ${False}    ${False}    ${True}
409
410 Test Is Flow 17 Deleted
411     f17.xml    ${False}    ${False}    ${True}
412
413 Test Is Flow 18 Deleted
414     f18.xml    ${False}    ${False}    ${True}
415
416 Test Is Flow 19 Deleted
417     f19.xml    ${False}    ${False}    ${True}
418
419 Test Is Flow 20 Deleted
420     f20.xml    ${False}    ${False}    ${True}
421
422 Test Is Flow 21 Deleted
423     f21.xml    ${False}    ${False}    ${True}
424
425 Test Is Flow 22 Deleted
426     f22.xml    ${False}    ${False}    ${True}
427
428 Test Is Flow 23 Deleted
429     f23.xml    ${False}    ${False}    ${True}
430
431 Test Is Flow 24 Deleted
432     f24.xml    ${False}    ${False}    ${True}
433
434 Test Is Flow 25 Deleted
435     f25.xml    ${False}    ${False}    ${True}
436
437 Test Is Flow 31 Deleted
438     f31.xml    ${False}    ${False}    ${True}
439
440 Test Is Flow 36 Deleted
441     f36.xml    ${False}    ${False}    ${True}
442
443 Test Is Flow 38 Deleted
444     f38.xml    ${False}    ${False}    ${True}
445
446 Test Is Flow 43 Deleted
447     f43.xml    ${False}    ${False}    ${True}
448
449 Test Is Flow 45 Deleted
450     f45.xml    ${False}    ${False}    ${True}
451
452 Test Is Flow 101 Deleted
453     f101.xml    ${False}    ${False}    ${True}
454
455 Test Is Flow 102 Deleted
456     f102.xml    ${False}    ${False}    ${True}
457
458 Test Is Flow 103 Deleted
459     f103.xml    ${False}    ${False}    ${True}
460
461 Test Is Flow 104 Deleted
462     f104.xml    ${False}    ${False}    ${True}
463
464 Test Is Flow 105 Deleted
465     f105.xml    ${False}    ${False}    ${True}
466
467 Test Is Flow 106 Deleted
468     f106.xml    ${False}    ${False}    ${True}
469
470 Test Is Flow 107 Deleted
471     f107.xml    ${False}    ${False}    ${True}
472
473 Test Is Flow 108 Deleted
474     f108.xml    ${False}    ${False}    ${True}
475
476 Test Is Flow 109 Deleted
477     f109.xml    ${False}    ${False}    ${True}
478
479 Test Is Flow 110 Deleted
480     f110.xml    ${False}    ${False}    ${True}
481
482 Test Is Flow 113 Deleted
483     f113.xml    ${False}    ${False}    ${True}
484
485 Test Is Flow 201 Deleted
486     f201.xml    ${False}    ${False}    ${True}
487
488 Test Is Flow 202 Deleted
489     f202.xml    ${False}    ${False}    ${True}
490
491 Test Is Flow 203 Deleted
492     f203.xml    ${False}    ${False}    ${True}
493
494 Test Is Flow 204 Deleted
495     f204.xml    ${False}    ${False}    ${True}
496
497 Test Is Flow 205 Deleted
498     f205.xml    ${False}    ${False}    ${True}
499
500 Test Is Flow 206 Deleted
501     f206.xml    ${False}    ${False}    ${True}
502
503 Test Is Flow 209 Deleted
504     f209.xml    ${False}    ${False}    ${True}
505
506 Test Is Flow 214 Deleted
507     f214.xml    ${False}    ${False}    ${True}
508
509 Test Is Flow 218 Deleted
510     f218.xml    ${False}    ${False}    ${True}
511
512 Test Is Flow 219 Deleted
513     f219.xml    ${False}    ${False}    ${True}
514
515 Test Is Flow 220 Deleted
516     f220.xml    ${False}    ${False}    ${True}
517
518 *** Keywords ***
519 Initialization Phase
520     [Documentation]    Initiate tcp connection with controller
521     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS_XML}
522     Write    dpctl dump-flows -O OpenFlow13
523     Read Until    mininet>