2 .. contents:: Table of Contents
8 Test Suite for testing basic Interface Manager functions.
12 Test setup consists of ODL with `odl-genius` installed and two switches (DPNs) connected
13 to ODL over OVSDB and OpenflowPlugin.
17 This suit uses the default Genius topology.
22 .. literalinclude:: topologies/default-topology.txt
34 Test Suite Requirements
35 =======================
39 Following steps are followed at beginning of test suite:
41 * Bring up ODL with `odl-genius` feature installed
43 * Add `tap` interfaces to bridge created above
44 * Add OVSDB manager to DPN using `ovs-vsctl set-manager`
45 * Connect bridge to OpenFlow using `ovs-vsctl set-controller`
46 * Repeat above steps for other DPNs
47 * Create REST session to ODL
52 Following steps are followed at beginning of test suite:
55 * Delete OVSDB manager 'ovs-vsctl del-manager'
56 * Repeat above steps for other DPNs
57 * Delete REST session to ODL
61 Following DataStore models are captured at end of each test case:
63 * config/itm-config:tunnel-monitor-enabled
64 * config/itm-config:tunnel-monitor-interval
65 * config/itm-state:dpn-endpoints
66 * config/itm-state:external-tunnel-list
67 * config/itm:transport-zones
68 * config/network-topology:network-topology
69 * config/opendaylight-inventory:nodes
70 * operational/ietf-interfaces:interfaces
71 * operational/ietf-interfaces:interfaces-state
72 * operational/itm-config:tunnel-monitor-enabled
73 * operational/itm-config:tunnel-monitor-interval
74 * operational/itm-state:tunnels_state
75 * operational/network-topology:network-topology
76 * operational/odl-interface-meta:bridge-ref-info
82 Create l2vlan Transparent Interface
83 -----------------------------------
84 This creates a transparent l2vlan interface between two dpns
86 Test Steps and Pass Criteria
87 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
89 #. Create transparent l2vlan interface through REST
91 #. Interface shows up in config
92 #. Interface state shows up in operational
93 #. Flows are added to `Table0` on the bridge
100 Delete l2vlan Transparent Interface
101 -----------------------------------
102 This testcase deletes the l2vlan transparent interface created in previous test case.
104 Test Steps and Pass Criteria
105 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
107 #. Remove all interfaces in config
109 #. Interface config is empty
110 #. Interface states in operational is empty
111 #. Flows are deleted from `Table0` on bridge
118 Create l2vlan Trunk Interface
119 -----------------------------
120 This testcase creates a l2vlan trunk interface between 2 DPNs.
122 Test Steps and Pass Criteria
123 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
125 #. Create l2vlan trunk interface through REST
127 #. Interface shows up in config
128 #. Interface state shows up in operational
129 #. Flows are added to `Table0` on the bridge
136 Create l2vlan Trunk Member Interface
137 ------------------------------------
138 This testcase creates a l2vlan Trunk member interface for the l2vlan trunk interface
139 created in previous testcase.
141 Test Steps and Pass Criteria
142 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
144 #. Create l2vlan trunk member interface through REST
146 #. Interface shows up in config
147 #. Interface state shows up in operational
148 #. Flows are added to `Table0` on the bridge
149 #. Flows match on `dl_vlan`
150 #. Flows have `action=pop_vlan`
157 Bind service on Interface
158 -------------------------
159 This testcase binds service to the L2vlan Trunk Interface earlier.
161 Test Steps and Pass Criteria
162 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
164 #. Add service bindings for `elan` and `VPN` services on L2Vlan Trunk Interface using REST
166 #. Check bindings for `VPN` and `elan` services exist on L2Vlan Trunk interface
167 #. Flows are added to `Table17` on the bridge
168 #. Flows have action `goto_table:21`
169 #. Flows have action `goto_table:50`
176 Unbind service on Interface
177 ---------------------------
178 This testcase Unbinds the services which were bound in previous testcase.
180 Test Steps and Pass Criteria
181 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
183 #. Delete service bindings for `elan` and `VPN` services on L2Vlan Trunk Interface using REST
185 #. Check bindings for `VPN` and `elan` services on L2Vlan Trunk interface don't exist
186 #. No flows on `Table0`
187 #. No flows with action `goto_table:21`
188 #. No flows with action `goto_table:50`
195 Delete L2vlan Trunk Interface
196 -----------------------------
197 Delete l2vlan trunk interface created and used in earlier test cases
199 Test Steps and Pass Criteria
200 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
202 #. Remove all interfaces in config
204 #. Interface config is empty
205 #. Interface states in operational is empty
206 #. Flows are deleted from `Table0` on bridge
234 * Link to implementation patche(s) in CSIT - TBD
239 [1] `OpenDaylight Genius usrr Guide <http://docs.opendaylight.org/en/latest/user-guide/genius-user-guide.html#interface-manager-operations>`__