Migrate Get Requests invocations(libraries)
[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
4 Library             Collections
5 Library             OperatingSystem
6 Library             RequestsLibrary
7 Library             SSHLibrary
8 Library             XML
9 Library             ${CURDIR}/../../../../libraries/Common.py
10 Library             ${CURDIR}/../../../../libraries/XmlComparator.py
11 Resource            ${CURDIR}/../../../../libraries/CompareStream.robot
12 Resource            ${CURDIR}/../../../../libraries/FlowLib.robot
13 Resource            ${CURDIR}/../../../../variables/Variables.robot
14
15 Suite Setup         Initialization Phase
16 Suite Teardown      Delete All Sessions
17 Test Template       Check Datastore Presence
18
19
20 *** Variables ***
21 ${flow_update_time}     3s
22 ${XmlsDir}              ${CURDIR}/../../../../variables/xmls
23 ${switch_idx}           1
24 ${switch_name}          s${switch_idx}
25 @{flowlist0}            f1.xml    f2.xml    f3.xml    f4.xml    f5.xml    f6.xml    f7.xml
26 ...                     f8.xml    f9.xml    f10.xml    f11.xml    f14.xml    f15.xml    f16.xml
27 ...                     f17.xml    f18.xml    f19.xml    f20.xml    f21.xml    f22.xml    f23.xml
28 ...                     f24.xml    f25.xml    f31.xml    f36.xml    f38.xml    f43.xml    f45.xml
29 ...                     f101.xml    f102.xml    f103.xml    f104.xml    f105.xml    f106.xml    f107.xml
30 ...                     f108.xml    f109.xml    f110.xml    f113.xml    f201.xml    f202.xml    f203.xml
31 ...                     f204.xml    f205.xml    f206.xml    f209.xml    f214.xml    f218.xml    f219.xml
32 ...                     f220.xml
33
34
35 *** Test Cases ***
36 Test Add Flows Group 0
37     [Documentation]    Add all flows and waits for SM to collect data
38     [Template]    NONE
39     FOR    ${flowfile}    IN    @{flowlist0}
40         Log    ${flowfile}
41         Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
42         Run Keyword And Continue On Failure    Add Flow Via RPC    ${switch_idx}    ${xmlroot}
43         # Lets wait for ofp to collect stats
44     END
45     ${flows}=    Get Length    ${flowlist0}
46     Wait Until Keyword Succeeds    30s    2s    FlowLib.Check Flow Stats Are Available    openflow%3A1    ${flows}
47     # Show switch content (for debug purposes if needed)
48     Write    dpctl dump-flows -O OpenFlow13
49     Read Until    mininet>
50 Test Is Flow 1 Added
51     f1.xml    ${False}    ${True}    ${False}
52 Test Is Flow 2 Added
53     f2.xml    ${False}    ${True}    ${False}
54 Test Is Flow 3 Added
55     f3.xml    ${False}    ${True}    ${False}
56 Test Is Flow 4 Added
57     f4.xml    ${False}    ${True}    ${False}
58 Test Is Flow 5 Added
59     f5.xml    ${False}    ${True}    ${False}
60 Test Is Flow 6 Added
61     f6.xml    ${False}    ${True}    ${False}
62 Test Is Flow 7 Added
63     f7.xml    ${False}    ${True}    ${False}
64 Test Is Flow 8 Added
65     f8.xml    ${False}    ${True}    ${False}
66 Test Is Flow 9 Added
67     f9.xml    ${False}    ${True}    ${False}
68 Test Is Flow 10 Added
69     f10.xml    ${False}    ${True}    ${False}
70 Test Is Flow 11 Added
71     f11.xml    ${False}    ${True}    ${False}
72 Test Is Flow 15 Added
73     f15.xml    ${False}    ${True}    ${False}
74 Test Is Flow 16 Added
75     f16.xml    ${False}    ${True}    ${False}
76 Test Is Flow 17 Added
77     f17.xml    ${False}    ${True}    ${False}
78 Test Is Flow 18 Added
79     f18.xml    ${False}    ${True}    ${False}
80 Test Is Flow 19 Added
81     f19.xml    ${False}    ${True}    ${False}
82 Test Is Flow 20 Added
83     f20.xml    ${False}    ${True}    ${False}
84 Test Is Flow 21 Added
85     f21.xml    ${False}    ${True}    ${False}
86 Test Is Flow 22 Added
87     f22.xml    ${False}    ${True}    ${False}
88 Test Is Flow 23 Added
89     f23.xml    ${False}    ${True}    ${False}
90 Test Is Flow 24 Added
91     f24.xml    ${False}    ${True}    ${False}
92 Test Is Flow 25 Added
93     f25.xml    ${False}    ${True}    ${False}
94 Test Is Flow 31 Added
95     f31.xml    ${False}    ${True}    ${False}
96 Test Is Flow 36 Added
97     f36.xml    ${False}    ${True}    ${False}
98 Test Is Flow 38 Added
99     f38.xml    ${False}    ${True}    ${False}
100 Test Is Flow 43 Added
101     f43.xml    ${False}    ${True}    ${False}
102 Test Is Flow 45 Added
103     f45.xml    ${False}    ${True}    ${False}
104 Test Is Flow 101 Added
105     f101.xml    ${False}    ${True}    ${False}
106 Test Is Flow 102 Added
107     f102.xml    ${False}    ${True}    ${False}
108 Test Is Flow 103 Added
109     f103.xml    ${False}    ${True}    ${False}
110 Test Is Flow 104 Added
111     f104.xml    ${False}    ${True}    ${False}
112 Test Is Flow 105 Added
113     f105.xml    ${False}    ${True}    ${False}
114 Test Is Flow 106 Added
115     f106.xml    ${False}    ${True}    ${False}
116 Test Is Flow 107 Added
117     f107.xml    ${False}    ${True}    ${False}
118 Test Is Flow 108 Added
119     f108.xml    ${False}    ${True}    ${False}
120 Test Is Flow 109 Added
121     f109.xml    ${False}    ${True}    ${False}
122 Test Is Flow 110 Added
123     f110.xml    ${False}    ${True}    ${False}
124 Test Is Flow 113 Added
125     f113.xml    ${False}    ${True}    ${False}
126 Test Is Flow 201 Added
127     f201.xml    ${False}    ${True}    ${False}
128 Test Is Flow 202 Added
129     f202.xml    ${False}    ${True}    ${False}
130 Test Is Flow 203 Added
131     f203.xml    ${False}    ${True}    ${False}
132 Test Is Flow 204 Added
133     f204.xml    ${False}    ${True}    ${False}
134 Test Is Flow 205 Added
135     f205.xml    ${False}    ${True}    ${False}
136 Test Is Flow 206 Added
137     f206.xml    ${False}    ${True}    ${False}
138 Test Is Flow 209 Added
139     f209.xml    ${False}    ${True}    ${False}
140 Test Is Flow 214 Added
141     f214.xml    ${False}    ${True}    ${False}
142 Test Is Flow 218 Added
143     f218.xml    ${False}    ${True}    ${False}
144 Test Is Flow 219 Added
145     f219.xml    ${False}    ${True}    ${False}
146 Test Is Flow 220 Added
147     f220.xml    ${False}    ${True}    ${False}
148 Test Update Flows Group 0
149     [Documentation]    Update all flows and waits for SM to collect data
150     [Template]    NONE
151     FOR    ${flowfile}    IN    @{flowlist0}
152         Log    ${flowfile}
153         Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
154         Run Keyword And Continue On Failure    Update Flow Via RPC    ${switch_idx}    ${data}    ${upddata}
155         # Lets wait for ofp to collect stats
156     END
157     Sleep    ${flow_update_time}
158     # Show switch content (for debug purposes if needed)
159     Write    dpctl dump-flows -O OpenFlow13
160     Read Until    mininet>
161 Test Is Flow 1 Updated
162     f1.xml    ${False}    ${True}    ${True}
163 Test Is Flow 2 Updated
164     f2.xml    ${False}    ${True}    ${True}
165 Test Is Flow 3 Updated
166     f3.xml    ${False}    ${True}    ${True}
167 Test Is Flow 4 Updated
168     f4.xml    ${False}    ${True}    ${True}
169 Test Is Flow 5 Updated
170     f5.xml    ${False}    ${True}    ${True}
171 Test Is Flow 6 Updated
172     f6.xml    ${False}    ${True}    ${True}
173 Test Is Flow 7 Updated
174     f7.xml    ${False}    ${True}    ${True}
175 Test Is Flow 8 Updated
176     f8.xml    ${False}    ${True}    ${True}
177 Test Is Flow 9 Updated
178     f9.xml    ${False}    ${True}    ${True}
179 Test Is Flow 10 Updated
180     f10.xml    ${False}    ${True}    ${True}
181 Test Is Flow 11 Updated
182     f11.xml    ${False}    ${True}    ${True}
183 Test Is Flow 14 Updated
184     f14.xml    ${False}    ${True}    ${True}
185 Test Is Flow 15 Updated
186     f15.xml    ${False}    ${True}    ${True}
187 Test Is Flow 16 Updated
188     f16.xml    ${False}    ${True}    ${True}
189 Test Is Flow 17 Updated
190     f17.xml    ${False}    ${True}    ${True}
191 Test Is Flow 18 Updated
192     f18.xml    ${False}    ${True}    ${True}
193 Test Is Flow 19 Updated
194     f19.xml    ${False}    ${True}    ${True}
195 Test Is Flow 20 Updated
196     f20.xml    ${False}    ${True}    ${True}
197 Test Is Flow 21 Updated
198     f21.xml    ${False}    ${True}    ${True}
199 Test Is Flow 22 Updated
200     f22.xml    ${False}    ${True}    ${True}
201 Test Is Flow 23 Updated
202     f23.xml    ${False}    ${True}    ${True}
203 Test Is Flow 24 Updated
204     f24.xml    ${False}    ${True}    ${True}
205 Test Is Flow 25 Updated
206     f25.xml    ${False}    ${True}    ${True}
207 Test Is Flow 31 Updated
208     f31.xml    ${False}    ${True}    ${True}
209 Test Is Flow 36 Updated
210     f36.xml    ${False}    ${True}    ${True}
211 Test Is Flow 38 Updated
212     f38.xml    ${False}    ${True}    ${True}
213 Test Is Flow 43 Updated
214     f43.xml    ${False}    ${True}    ${True}
215 Test Is Flow 45 Updated
216     f45.xml    ${False}    ${True}    ${True}
217 Test Is Flow 101 Updated
218     f101.xml    ${False}    ${True}    ${True}
219 Test Is Flow 102 Updated
220     f102.xml    ${False}    ${True}    ${True}
221 Test Is Flow 103 Updated
222     f103.xml    ${False}    ${True}    ${True}
223 Test Is Flow 104 Updated
224     f104.xml    ${False}    ${True}    ${True}
225 Test Is Flow 105 Updated
226     f105.xml    ${False}    ${True}    ${True}
227 Test Is Flow 106 Updated
228     f106.xml    ${False}    ${True}    ${True}
229 Test Is Flow 107 Updated
230     f107.xml    ${False}    ${True}    ${True}
231 Test Is Flow 108 Updated
232     f108.xml    ${False}    ${True}    ${True}
233 Test Is Flow 109 Updated
234     f109.xml    ${False}    ${True}    ${True}
235 Test Is Flow 110 Updated
236     f110.xml    ${False}    ${True}    ${True}
237 Test Is Flow 113 Updated
238     f113.xml    ${False}    ${True}    ${True}
239 Test Is Flow 201 Updated
240     f201.xml    ${False}    ${True}    ${True}
241 Test Is Flow 202 Updated
242     f202.xml    ${False}    ${True}    ${True}
243 Test Is Flow 203 Updated
244     f203.xml    ${False}    ${True}    ${True}
245 Test Is Flow 204 Updated
246     f204.xml    ${False}    ${True}    ${True}
247 Test Is Flow 205 Updated
248     f205.xml    ${False}    ${True}    ${True}
249 Test Is Flow 206 Updated
250     f206.xml    ${False}    ${True}    ${True}
251 Test Is Flow 209 Updated
252     f209.xml    ${False}    ${True}    ${True}
253 Test Is Flow 214 Updated
254     f214.xml    ${False}    ${True}    ${True}
255 Test Is Flow 218 Updated
256     f218.xml    ${False}    ${True}    ${True}
257 Test Is Flow 219 Updated
258     f219.xml    ${False}    ${True}    ${True}
259 Test Is Flow 220 Updated
260     f220.xml    ${False}    ${True}    ${True}
261 Test Delete Flows Group 0
262     [Documentation]    Delete all flows and waits for SM to collect data
263     [Template]    NONE
264     FOR    ${flowfile}    IN    @{flowlist0}
265         Log    ${flowfile}
266         Create Flow Variables For Suite From XML File    ${XmlsDir}/${flowfile}
267         Run Keyword And Continue On Failure    Delete Flow Via RPC    ${switch_idx}    ${xmlroot}
268         # Lets wait for ofp to collect stats
269     END
270     Sleep    ${flow_update_time}
271     # Show switch content (for debug purposes if needed)
272     Write    dpctl dump-flows -O OpenFlow13
273     Read Until    mininet>
274 Test Is Flow 1 Deleted
275     f1.xml    ${False}    ${False}    ${True}
276 Test Is Flow 2 Deleted
277     f2.xml    ${False}    ${False}    ${True}
278 Test Is Flow 3 Deleted
279     f3.xml    ${False}    ${False}    ${True}
280 Test Is Flow 4 Deleted
281     f4.xml    ${False}    ${False}    ${True}
282 Test Is Flow 5 Deleted
283     f5.xml    ${False}    ${False}    ${True}
284 Test Is Flow 6 Deleted
285     f6.xml    ${False}    ${False}    ${True}
286 Test Is Flow 7 Deleted
287     f7.xml    ${False}    ${False}    ${True}
288 Test Is Flow 8 Deleted
289     f8.xml    ${False}    ${False}    ${True}
290 Test Is Flow 9 Deleted
291     f9.xml    ${False}    ${False}    ${True}
292 Test Is Flow 10 Deleted
293     f10.xml    ${False}    ${False}    ${True}
294 Test Is Flow 11 Deleted
295     f11.xml    ${False}    ${False}    ${True}
296 Test Is Flow 14 Deleted
297     f14.xml    ${False}    ${False}    ${True}
298 Test Is Flow 15 Deleted
299     f15.xml    ${False}    ${False}    ${True}
300 Test Is Flow 16 Deleted
301     f16.xml    ${False}    ${False}    ${True}
302 Test Is Flow 17 Deleted
303     f17.xml    ${False}    ${False}    ${True}
304 Test Is Flow 18 Deleted
305     f18.xml    ${False}    ${False}    ${True}
306 Test Is Flow 19 Deleted
307     f19.xml    ${False}    ${False}    ${True}
308 Test Is Flow 20 Deleted
309     f20.xml    ${False}    ${False}    ${True}
310 Test Is Flow 21 Deleted
311     f21.xml    ${False}    ${False}    ${True}
312 Test Is Flow 22 Deleted
313     f22.xml    ${False}    ${False}    ${True}
314 Test Is Flow 23 Deleted
315     f23.xml    ${False}    ${False}    ${True}
316 Test Is Flow 24 Deleted
317     f24.xml    ${False}    ${False}    ${True}
318 Test Is Flow 25 Deleted
319     f25.xml    ${False}    ${False}    ${True}
320 Test Is Flow 31 Deleted
321     f31.xml    ${False}    ${False}    ${True}
322 Test Is Flow 36 Deleted
323     f36.xml    ${False}    ${False}    ${True}
324 Test Is Flow 38 Deleted
325     f38.xml    ${False}    ${False}    ${True}
326 Test Is Flow 43 Deleted
327     f43.xml    ${False}    ${False}    ${True}
328 Test Is Flow 45 Deleted
329     f45.xml    ${False}    ${False}    ${True}
330 Test Is Flow 101 Deleted
331     f101.xml    ${False}    ${False}    ${True}
332 Test Is Flow 102 Deleted
333     f102.xml    ${False}    ${False}    ${True}
334 Test Is Flow 103 Deleted
335     f103.xml    ${False}    ${False}    ${True}
336 Test Is Flow 104 Deleted
337     f104.xml    ${False}    ${False}    ${True}
338 Test Is Flow 105 Deleted
339     f105.xml    ${False}    ${False}    ${True}
340 Test Is Flow 106 Deleted
341     f106.xml    ${False}    ${False}    ${True}
342 Test Is Flow 107 Deleted
343     f107.xml    ${False}    ${False}    ${True}
344 Test Is Flow 108 Deleted
345     f108.xml    ${False}    ${False}    ${True}
346 Test Is Flow 109 Deleted
347     f109.xml    ${False}    ${False}    ${True}
348 Test Is Flow 110 Deleted
349     f110.xml    ${False}    ${False}    ${True}
350 Test Is Flow 113 Deleted
351     f113.xml    ${False}    ${False}    ${True}
352 Test Is Flow 201 Deleted
353     f201.xml    ${False}    ${False}    ${True}
354 Test Is Flow 202 Deleted
355     f202.xml    ${False}    ${False}    ${True}
356 Test Is Flow 203 Deleted
357     f203.xml    ${False}    ${False}    ${True}
358 Test Is Flow 204 Deleted
359     f204.xml    ${False}    ${False}    ${True}
360 Test Is Flow 205 Deleted
361     f205.xml    ${False}    ${False}    ${True}
362 Test Is Flow 206 Deleted
363     f206.xml    ${False}    ${False}    ${True}
364 Test Is Flow 209 Deleted
365     f209.xml    ${False}    ${False}    ${True}
366 Test Is Flow 214 Deleted
367     f214.xml    ${False}    ${False}    ${True}
368 Test Is Flow 218 Deleted
369     f218.xml    ${False}    ${False}    ${True}
370 Test Is Flow 219 Deleted
371     f219.xml    ${False}    ${False}    ${True}
372 Test Is Flow 220 Deleted
373     f220.xml    ${False}    ${False}    ${True}
374
375
376 *** Keywords ***
377 Initialization Phase
378     [Documentation]    Initiate tcp connection with controller
379     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS_XML}
380     BuiltIn.Wait Until Keyword Succeeds    10x    1s    FlowLib.Check Switches In Inventory    ${1}
381     Write    dpctl dump-flows -O OpenFlow13
382     Read Until    mininet>