2 Documentation Test suite to verify fitration operation on different models.
3 ... Before test starts, configurational file have to be rewriten to change listners registration datastore type from CONFIGURATION to OPERATIONAL.
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 ... Tests themselves install feature required for specific model, clear karaf logs for futher synchronization, send configurational xmls and verify output.
6 ... Topology-id on the end of each urls 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 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 Filtration Range Number Network Topology Model
22 [Documentation] Test of range number type of filtration operation on Network Topology model
23 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} network-topology-model termination-point network-topo:2
24 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OVSDB_OFPORT}
25 ${request} Set Range Number Filter ${request} 1115 1119
26 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
27 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
28 Check Filtered Termination Points in Node ${resp.content} bgp:6 tp:6:1
29 Check Filtered Termination Points in Node ${resp.content} bgp:7 tp:7:1 tp:7:2
30 Check Filtered Termination Points in Node ${resp.content} bgp:8
31 Check Filtered Termination Points in Node ${resp.content} bgp:9
32 Check Filtered Termination Points in Node ${resp.content} bgp:10
34 Filtration Range Number Inventory Model
35 [Documentation] Test of range number type of filtration operation on Inventory model
36 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} opendaylight-inventory-model termination-point openflow-topo:1
37 ${request} Insert Filter ${request} ${FILTER_RANGE_NUMBER} ${OPENFLOW_NODE_CONNECTOR_PORT_NUMBER}
38 ${request} Set Range Number Filter ${request} 2 4
39 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
40 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=5 tp-ref_count=5
41 Check Filtered Termination Points in Node ${resp.content} of-node:1
42 Check Filtered Termination Points in Node ${resp.content} of-node:2 tp:2:3 tp:2:2
43 Check Filtered Termination Points in Node ${resp.content} of-node:3 tp:3:1 tp:3:2
44 Check Filtered Termination Points in Node ${resp.content} of-node:4
45 Check Filtered Termination Points in Node ${resp.content} of-node:5 tp:5:1
47 Filtration Specific Number Network Topology Model
48 [Documentation] Test of specific number type of filtration operation on Network Topology model
49 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} network-topology-model termination-point network-topo:2
50 ${request} Insert Filter ${request} ${FILTER_SPECIFIC_NUMBER} ${OVSDB_OFPORT}
51 ${request} Set Specific Number Filter ${request} 1119
52 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
53 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=1 tp-ref_count=1
54 ${node} Get Element ${resp.content} xpath=.//node/supporting-node[node-ref='bgp:7']/..
55 ${node} Element to String ${node}
56 Should Contain X Times ${node} <termination-point> 1
57 Check Filtered Termination Points in Node ${resp.content} bgp:6
58 Check Filtered Termination Points in Node ${resp.content} bgp:7 tp:7:1
59 Check Filtered Termination Points in Node ${resp.content} bgp:8
60 Check Filtered Termination Points in Node ${resp.content} bgp:9
61 Check Filtered Termination Points in Node ${resp.content} bgp:10
63 Filtration Specific Number Inventory Model
64 [Documentation] Test of specific number type of filtration operation on Inventory model
65 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} opendaylight-inventory-model termination-point openflow-topo:1
66 ${request} Insert Filter ${request} ${FILTER_SPECIFIC_NUMBER} ${OPENFLOW_NODE_CONNECTOR_MAXIMUM_SPEED}
67 ${request} Set Specific Number Filter ${request} 2
68 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
69 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
70 Check Filtered Termination Points in Node ${resp.content} of-node:1
71 Check Filtered Termination Points in Node ${resp.content} of-node:2 tp:2:2
72 Check Filtered Termination Points in Node ${resp.content} of-node:3 tp:3:1 tp:3:2
73 Check Filtered Termination Points in Node ${resp.content} of-node:4
74 Check Filtered Termination Points in Node ${resp.content} of-node:5
76 Filtration Specific String Network Topology Model
77 [Documentation] Test of specific string type of filtration operation on Network Topology model
78 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} network-topology-model termination-point network-topo:2
79 ${request} Insert Filter ${request} ${FILTER_SPECIFIC_STRING} ${OVSDB_TP_NAME}
80 ${request} Set Specific String Filter ${request} portC
81 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
82 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=1 tp-ref_count=1
83 Check Filtered Termination Points in Node ${resp.content} bgp:6
84 Check Filtered Termination Points in Node ${resp.content} bgp:7 tp:7:2
85 Check Filtered Termination Points in Node ${resp.content} bgp:8
86 Check Filtered Termination Points in Node ${resp.content} bgp:9
87 Check Filtered Termination Points in Node ${resp.content} bgp:10
89 Filtration Specific String Inventory Model
90 [Documentation] Test of specific string type of filtration operation on Inventory model
91 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} opendaylight-inventory-model termination-point openflow-topo:1
92 ${request} Insert Filter ${request} ${FILTER_SPECIFIC_STRING} ${OPENFLOW_NODE_CONNECTOR_NAME}
93 ${request} Set Specific String Filter ${request} portB
94 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
95 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=2 tp-ref_count=2
96 Check Filtered Termination Points in Node ${resp.content} of-node:1
97 Check Filtered Termination Points in Node ${resp.content} of-node:2 tp:2:1
98 Check Filtered Termination Points in Node ${resp.content} of-node:3
99 Check Filtered Termination Points in Node ${resp.content} of-node:4
100 Check Filtered Termination Points in Node ${resp.content} of-node:5 tp:5:1
102 Filtration Range String Network Topology Model
103 [Documentation] Test of range string type of filtration operation on Network Topology model
104 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} network-topology-model termination-point network-topo:2
105 ${request} Insert Filter ${request} ${FILTER_RANGE_STRING} ${OVSDB_TP_NAME}
106 ${request} Set Range String Filter ${request} portA portC
107 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
108 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
109 Check Filtered Termination Points in Node ${resp.content} bgp:6 tp:6:1
110 Check Filtered Termination Points in Node ${resp.content} bgp:7 tp:7:2
111 Check Filtered Termination Points in Node ${resp.content} bgp:8
112 Check Filtered Termination Points in Node ${resp.content} bgp:9
113 Check Filtered Termination Points in Node ${resp.content} bgp:10 tp:10:1
115 Filtration Range String Inventory Model
116 [Documentation] Test of range string type of filtration operation on Inventory model
117 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} opendaylight-inventory-model termination-point openflow-topo:1
118 ${request} Insert Filter ${request} ${FILTER_RANGE_STRING} ${OPENFLOW_NODE_CONNECTOR_NAME}
119 ${request} Set Range String Filter ${request} portA portB
120 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
121 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
122 Check Filtered Termination Points in Node ${resp.content} of-node:1
123 Check Filtered Termination Points in Node ${resp.content} of-node:2 tp:2:1 tp:2:3
124 Check Filtered Termination Points in Node ${resp.content} of-node:3
125 Check Filtered Termination Points in Node ${resp.content} of-node:4
126 Check Filtered Termination Points in Node ${resp.content} of-node:5 tp:5:1
128 Filtration Script Network Topology Model
129 [Documentation] Test of script type of filtration operation on Network Topology model
130 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} network-topology-model termination-point network-topo:1
131 ${request} Insert Filter ${request} ${FILTER_SCRIPT} ${OVSDB_OFPORT}
132 ${script} Set Variable if (node.getValue() > 1117 ) {filterOut.setResult(true);} else {filterOut.setResult(false);}
133 ${request} Set Script Filter ${request} javascript ${script}
134 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
135 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
136 Check Filtered Termination Points in Node ${resp.content} bgp:1
137 Check Filtered Termination Points in Node ${resp.content} bgp:2
138 Check Filtered Termination Points in Node ${resp.content} bgp:3
139 Check Filtered Termination Points in Node ${resp.content} bgp:4 tp:4:1 tp:4:2
140 Check Filtered Termination Points in Node ${resp.content} bgp:5 tp:5:1
142 Filtration Script Inventory Model
143 [Documentation] Test of script type of filtration operation on Inventory model
144 ${request} Prepare Filtration Topology Request ${FILTRATION_NT} opendaylight-inventory-model termination-point openflow-topo:1
145 ${request} Insert Filter ${request} ${FILTER_SCRIPT} ${OPENFLOW_NODE_CONNECTOR_NAME}
146 ${script} Set Variable if (node.getValue().indexOf("portB") > -1 ) {filterOut.setResult(true);} else {filterOut.setResult(false);}
147 ${request} Set Script Filter ${request} javascript ${script}
148 Basic Request Put ${request} ${OVERLAY_TOPO_URL}
149 ${resp} Wait Until Keyword Succeeds 3x 1s Output Topo Should Be Complete node_count=5 supporting-node_count=5 node-ref_count=5 tp_count=3 tp-ref_count=3
150 Check Filtered Termination Points in Node ${resp.content} of-node:1 tp:1:1
151 Check Filtered Termination Points in Node ${resp.content} of-node:2 tp:2:2 tp:2:3
152 Check Filtered Termination Points in Node ${resp.content} of-node:3
153 Check Filtered Termination Points in Node ${resp.content} of-node:4
154 Check Filtered Termination Points in Node ${resp.content} of-node:5