2 Documentation Test suite to verify processing of removal requests on different models.
3 ... Before tests start, configurational files have to be rewriten to change listeners registration datastore type from CONFIG_API to OPERATIONAL_API.
4 ... Need for this change is also a reason why main feature (odl-topoprocessing-framework) is installed after file change and not during boot.
5 ... Suite setup also installs features required for tested models and clears karaf logs for further synchronization. Tests themselves send configurational
6 ... xmls and verify output. Topology-id on the end of each url must match topology-id from xml. Yang models of components in topology are defined in xmls.
8 Library RequestsLibrary
11 Variables ../../../variables/topoprocessing/TopologyRequests.py
12 Variables ../../../variables/topoprocessing/TargetFields.py
13 Variables ../../../variables/Variables.py
14 Resource ../../../libraries/KarafKeywords.robot
15 Resource ../../../libraries/Utils.robot
16 Resource ../../../libraries/TopoprocessingKeywords.robot
18 Suite Setup Setup Environment
19 Suite Teardown Clean Environment
20 Test Setup SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
21 Test Teardown Refresh Underlay Topologies And Delete Overlay Topology
25 Unification Node Removal NT
26 [Documentation] Test processing of node removal using unification operation on Network Topology model
27 ${model} Set Variable network-topology-model
28 #Create the original topology
29 ${request} Prepare Unification Topology Request
31 ... network-topology-model
35 ${request} Insert Target Field ${request} 0 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
36 ${request} Insert Target Field ${request} 1 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
37 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
38 ${resp} Wait Until Keyword Succeeds
41 ... Output Topo Should Be Complete
43 ... supporting-node_count=10
45 #Remove an underlay aggregated node, preserving the overlay node
46 Delete Underlay Node network-topo:1 bgp:3
47 ${resp} Wait Until Keyword Succeeds
50 ... Output Topo Should Be Complete
52 ... supporting-node_count=9
54 Check Aggregated Node in Topology ${model} ${resp.content} 2 bgp:4
55 #Remove an underlay aggregated node, expecting removal of the overlay node
56 Delete Underlay Node network-topo:1 bgp:4
57 ${resp} Wait Until Keyword Succeeds
60 ... Output Topo Should Be Complete
62 ... supporting-node_count=8
65 Unification Node Removal Inventory
66 [Documentation] Test processing of node removal using unification operation on Inventory model
67 ${model} Set Variable opendaylight-inventory-model
68 #Create the original topology
69 ${request} Prepare Unification Topology Request
75 ${request} Insert Target Field ${request} 0 ${OPENFLOW_NODE_IP_ADDRESS} 0
76 ${request} Insert Target Field ${request} 1 ${OPENFLOW_NODE_IP_ADDRESS} 0
77 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
78 ${resp} Wait Until Keyword Succeeds
81 ... Output Topo Should Be Complete
83 ... supporting-node_count=10
85 #Remove an underlay aggregated node, preserving the overlay node
86 Delete Underlay Node openflow-topo:2 of-node:6
87 ${resp} Wait Until Keyword Succeeds
90 ... Output Topo Should Be Complete
92 ... supporting-node_count=9
94 Check Aggregated Node in Topology ${model} ${resp.content} 2 of-node:1
95 #Remove an underlay aggregated node, expecting removal of the overlay node
96 Delete Underlay Node openflow-topo:1 of-node:1
97 ${resp} Wait Until Keyword Succeeds
100 ... Output Topo Should Be Complete
102 ... supporting-node_count=8
105 Filtration Range Number Node Removal NT
106 [Documentation] Test processing of node removal using filtration operation on Network Topology model
107 ${model} Set Variable network-topology-model
108 #Create the original topology
109 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} ${model} node network-topo:2
110 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OVSDB_OVS_VERSION}
111 ${request} Set Range Number Filter ${request} 20 25
112 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
113 ${resp} Wait Until Keyword Succeeds
116 ... Output Topo Should Be Complete
118 ... supporting-node_count=4
122 #Remove an underlay filtered node, expecting removal of the overlay node
123 Delete Underlay Node network-topo:2 bgp:7
124 ${resp} Wait Until Keyword Succeeds
127 ... Output Topo Should Be Complete
129 ... supporting-node_count=3
134 Filtration Range Number Node Removal Inventory
135 [Documentation] Test processing of node removal using filtration operation on Inventory model
136 ${model} Set Variable opendaylight-inventory-model
137 #Create the original topology
138 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} ${model} node openflow-topo:2
139 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OPENFLOW_NODE_SERIAL_NUMBER}
140 ${request} Set Range Number Filter ${request} 20 25
141 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
142 ${resp} Wait Until Keyword Succeeds
145 ... Output Topo Should Be Complete
147 ... supporting-node_count=3
151 #Remove an underlay filtered node, expecting removal of the overlay node
152 Delete Underlay Node openflow-topo:2 of-node:8
153 ${resp} Wait Until Keyword Succeeds
156 ... Output Topo Should Be Complete
158 ... supporting-node_count=2
163 Filtration Range Number Termination Point Removal NT
164 [Documentation] Test processing of termination point removal using filtration operation on Network Topology model
165 ${model} Set Variable network-topology-model
166 #Create the original topology
167 ${request} Prepare Filtration Topology Request
170 ... termination-point
172 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OVSDB_OFPORT}
173 ${request} Set Range Number Filter ${request} 1115 1119
174 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
175 ${resp} Wait Until Keyword Succeeds
178 ... Output Topo Should Be Complete
180 ... supporting-node_count=5
184 #Remove an underlay filtered termination point
185 Delete Underlay Termination Point network-topo:2 bgp:7 tp:7:2
186 ${resp} Wait Until Keyword Succeeds
189 ... Output Topo Should Be Complete
191 ... supporting-node_count=5
195 #Remove an underlay filtered termination point
196 Delete Underlay Termination Point network-topo:2 bgp:7 tp:7:1
197 ${resp} Wait Until Keyword Succeeds
200 ... Output Topo Should Be Complete
202 ... supporting-node_count=5
207 Filtration Range Number Termination Point Removal Inventory
208 [Documentation] Test processing of termination point removal using filtration operation on Inventory model
209 ${model} Set Variable opendaylight-inventory-model
210 #Create the original topology
211 ${request} Prepare Filtration Topology Request
214 ... termination-point
216 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OPENFLOW_NODE_CONNECTOR_PORT_NUMBER}
217 ${request} Set Range Number Filter ${request} 2 4
218 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
219 ${resp} Wait Until Keyword Succeeds
222 ... Output Topo Should Be Complete
224 ... supporting-node_count=5
228 #Remove an underlay filtered termination point
229 Delete Underlay Termination Point openflow-topo:1 of-node:3 tp:3:2
230 ${resp} Wait Until Keyword Succeeds
233 ... Output Topo Should Be Complete
235 ... supporting-node_count=5
239 #Remove an underlay filtered termination point
240 Delete Underlay Termination Point openflow-topo:1 of-node:3 tp:3:1
241 ${resp} Wait Until Keyword Succeeds
244 ... Output Topo Should Be Complete
246 ... supporting-node_count=5
251 Filtration Range Number Link Removal NT
252 [Documentation] Test processing of link removal using filtration operation on NT model
253 #Create the original topology
254 ${request} Prepare Filtration Topology Request
256 ... network-topology-model
259 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${IGP_LINK_METRIC}
260 ${request} Set Range Number Filter ${request} 11 13
261 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
262 ${resp} Wait Until Keyword Succeeds
265 ... Output Topo Should Be Complete
268 #Remove an underlay filtered link, expecting removal of the overlay link
269 Delete Underlay Link network-topo:1 link:1:3
270 ${resp} Wait Until Keyword Succeeds
273 ... Output Topo Should Be Complete
277 Filtration Range Number Link Removal Inventory
278 [Documentation] Test processing of link removal using filtration operation on Inventory model
279 #Create the original topology
280 ${request} Prepare Filtration Topology Request
282 ... opendaylight-inventory-model
285 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${IGP_LINK_METRIC}
286 ${request} Set Range Number Filter ${request} 14 15
287 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
288 ${resp} Wait Until Keyword Succeeds
291 ... Output Topo Should Be Complete
294 #Remove an underlay filtered link, expecting removal of the overlay link
295 Delete Underlay Link openflow-topo:3 link:14:12
296 ${resp} Wait Until Keyword Succeeds
299 ... Output Topo Should Be Complete
303 Unification Filtration Node Removal Inside NT
304 [Documentation] Test processing of node removal using unification with filtration operation on Network Topology model
305 ${model} Set Variable network-topology-model
306 ${request} Prepare Unification Filtration Inside Topology Request
307 ... ${UNIFICATION_FILTRATION_NT_AGGREGATE_INSIDE}
310 ... ${ISIS_NODE_TE_ROUTER_ID_IPV4}
312 ${request} Insert Filter With ID ${request} ${FILTER_IPV4} ${ISIS_NODE_TE_ROUTER_ID_IPV4} 1
313 ${request} Insert Apply Filters ${request} 1 1
314 ${request} Set IPV4 Filter ${request} 192.168.2.1/24
315 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
316 ${resp} Wait Until Keyword Succeeds
319 ... Output Topo Should Be Complete
321 ... supporting-node_count=3
325 #Remove an underlay aggregated node, preserving the overlay node
326 Delete Underlay Node network-topo:4 bgp:20
327 ${resp} Wait Until Keyword Succeeds
330 ... Output Topo Should Be Complete
332 ... supporting-node_count=2
336 #Remove an underlay aggregated node, expecting removal of the overlay node
337 Delete Underlay Node network-topo:4 bgp:18
338 ${resp} Wait Until Keyword Succeeds
341 ... Output Topo Should Be Complete
343 ... supporting-node_count=1
348 Unification Filtration Node Removal Inside Inventory
349 [Documentation] Test processing of node removal using unification with filtration operation on Inventory model
350 ${model} Set Variable opendaylight-inventory-model
351 ${request} Prepare Unification Filtration Inside Topology Request
352 ... ${UNIFICATION_FILTRATION_NT_AGGREGATE_INSIDE}
355 ... ${OPENFLOW_NODE_IP_ADDRESS}
357 ${request} Insert Filter With ID ${request} ${FILTER_IPV4} ${OPENFLOW_NODE_IP_ADDRESS} 1
358 ${request} Insert Apply Filters ${request} 1 1
359 ${request} Set IPV4 Filter ${request} 192.168.2.1/24
360 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
361 ${resp} Wait Until Keyword Succeeds
364 ... Output Topo Should Be Complete
366 ... supporting-node_count=4
370 #Remove an underlay aggregated node, preserving the overlay node
371 Delete Underlay Node openflow-topo:4 of-node:17
372 ${resp} Wait Until Keyword Succeeds
375 ... Output Topo Should Be Complete
377 ... supporting-node_count=3
381 #Remove an underlay aggregated node, expecting removal of the overlay node
382 Delete Underlay Node openflow-topo:4 of-node:18
383 ${resp} Wait Until Keyword Succeeds
386 ... Output Topo Should Be Complete
388 ... supporting-node_count=2
393 Link Computation Aggregation Inside Node Removal NT
394 [Documentation] Test processing of node removal using unification with link computation operation on Network Topology model
395 ${model} Set Variable network-topology-model
396 ${request} Prepare Unification Inside Topology Request
397 ... ${UNIFICATION_NT_AGGREGATE_INSIDE}
401 ${request} Insert Target Field ${request} 0 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
402 ${request} Insert Link Computation Inside
404 ... ${LINK_COMPUTATION_INSIDE}
405 ... n:network-topology-model
407 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
408 ${resp} Wait Until Keyword Succeeds
411 ... Output Topo Should Be Complete
413 ... supporting-node_count=5
417 Delete Underlay Node network-topo:6 bgp:26
418 ${resp} Wait Until Keyword Succeeds
421 ... Output Topo Should Be Complete
423 ... supporting-node_count=4
427 Delete Underlay Node network-topo:6 bgp:28
428 ${resp} Wait Until Keyword Succeeds
431 ... Output Topo Should Be Complete
433 ... supporting-node_count=3
438 Link Computation Aggregation Inside Link Removal NT
439 [Documentation] Test processing of link removal using unification with link computation operation on Network Topology model
440 ${model} Set Variable network-topology-model
441 ${request} Prepare Unification Inside Topology Request
442 ... ${UNIFICATION_NT_AGGREGATE_INSIDE}
446 ${request} Insert Target Field ${request} 0 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
447 ${request} Insert Link Computation Inside
449 ... ${LINK_COMPUTATION_INSIDE}
450 ... n:network-topology-model
452 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
453 ${resp} Wait Until Keyword Succeeds
456 ... Output Topo Should Be Complete
458 ... supporting-node_count=5
462 Delete Underlay Link network-topo:6 link:26:28
463 ${resp} Wait Until Keyword Succeeds
466 ... Output Topo Should Be Complete
468 ... supporting-node_count=5