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