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 ${OVERLAY_TOPO_URL}
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 ${OVERLAY_TOPO_URL} ${TOPOLOGY_URL}/topo:1
24 Unification Node Removal NT
25 [Documentation] Test processing of node removal using unification operation on Network Topology model
26 ${model} Set Variable network-topology-model
27 #Create the original topology
28 ${request} Prepare Unification Topology Request ${UNIFICATION_NT} network-topology-model node network-topo:1 network-topo:2
29 ${request} Insert Target Field ${request} 0 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
30 ${request} Insert Target Field ${request} 1 ${ISIS_NODE_TE_ROUTER_ID_IPV4} 0
31 Send Basic Request And Test If Contain X Times ${request} ${OVERLAY_TOPO_URL} <node-id>node: 8
32 #Remove an underlay aggregated node, preserving the overlay node
33 Delete Underlay Node network-topo:1 bgp:3
34 ${resp} Wait Until Keyword Succeeds 10x 250ms Basic Request Get And Test ${OVERLAY_TOPO_URL} <supporting-node>
36 Check Aggregated Node in Topology ${model} ${resp.content} 2 bgp:4
37 #Remove an underlay aggregated node, expecting removal of the overlay node
38 Delete Underlay Node network-topo:1 bgp:4
39 Wait Until Keyword Succeeds 10x 250ms Basic Request Get And Test ${OVERLAY_TOPO_URL} <supporting-node> 8
41 Unification Node Removal Inventory
42 [Documentation] Test processing of node removal using unification operation on Inventory model
43 ${model} Set Variable opendaylight-inventory-model
44 #Create the original topology
45 ${request} Prepare Unification Topology Request ${UNIFICATION_NT} ${model} node openflow-topo:1 openflow-topo:2
46 ${request} Insert Target Field ${request} 0 ${OPENFLOW_NODE_IP_ADDRESS} 0
47 ${request} Insert Target Field ${request} 1 ${OPENFLOW_NODE_IP_ADDRESS} 0
48 Send Basic Request And Test If Contain X Times ${request} ${OVERLAY_TOPO_URL} <node-id>node: 7
49 #Remove an underlay aggregated node, preserving the overlay node
50 Delete Underlay Node openflow-topo:2 of-node:6
51 ${resp} Wait Until Keyword Succeeds 10x 250ms Basic Request Get And Test ${OVERLAY_TOPO_URL} <supporting-node>
53 Check Aggregated Node in Topology ${model} ${resp.content} 2 of-node:1
54 #Remove an underlay aggregated node, expecting removal of the overlay node
55 Delete Underlay Node openflow-topo:1 of-node:1
56 Wait Until Keyword Succeeds 10x 250ms Basic Request Get And Test ${OVERLAY_TOPO_URL} <supporting-node> 8