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.
7 Suite Setup Setup Environment
8 Suite Teardown Clean Environment
9 Test Teardown Refresh Underlay Topologies And Delete Overlay Topology
10 Library RequestsLibrary
13 Variables ../../../variables/topoprocessing/TopologyRequests.py
14 Variables ../../../variables/topoprocessing/TargetFields.py
15 Variables ../../../variables/Variables.py
16 Resource ../../../libraries/KarafKeywords.robot
17 Resource ../../../libraries/Utils.robot
18 Resource ../../../libraries/TopoprocessingKeywords.robot
21 Unification Node Removal NT
22 [Documentation] Test processing of node removal using unification operation on Network Topology model
23 ${model} Set Variable network-topology-model
24 #Create the original topology
25 ${request} Prepare Unification Topology Request ${UNIFICATION_NT} network-topology-model node network-topo:1 network-topo:2
26 ${request} Insert Target Field ${request} 0 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
27 ${request} Insert Target Field ${request} 1 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
28 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
29 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=8 supporting-node_count=10 node-ref_count=10
30 #Remove an underlay aggregated node, preserving the overlay node
31 Delete Underlay Node network-topo:1 bgp:3
32 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=8 supporting-node_count=9 node-ref_count=9
33 Check Aggregated Node in Topology ${model} ${resp.content} 2 bgp:4
34 #Remove an underlay aggregated node, expecting removal of the overlay node
35 Delete Underlay Node network-topo:1 bgp:4
36 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=7 supporting-node_count=8 node-ref_count=8
38 Unification Node Removal Inventory
39 [Documentation] Test processing of node removal using unification operation on Inventory model
40 ${model} Set Variable opendaylight-inventory-model
41 #Create the original topology
42 ${request} Prepare Unification Topology Request ${UNIFICATION_NT} ${model} node openflow-topo:1 openflow-topo:2
43 ${request} Insert Target Field ${request} 0 ${OPENFLOW_NODE_IP_ADDRESS} 0
44 ${request} Insert Target Field ${request} 1 ${OPENFLOW_NODE_IP_ADDRESS} 0
45 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
46 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=7 supporting-node_count=10 node-ref_count=10
47 #Remove an underlay aggregated node, preserving the overlay node
48 Delete Underlay Node openflow-topo:2 of-node:6
49 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=7 supporting-node_count=9 node-ref_count=9
50 Check Aggregated Node in Topology ${model} ${resp.content} 2 of-node:1
51 #Remove an underlay aggregated node, expecting removal of the overlay node
52 Delete Underlay Node openflow-topo:1 of-node:1
53 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=6 supporting-node_count=8 node-ref_count=8