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