*** Settings ***
Documentation Test suite for Ring/Loop topology of size 3
Suite Setup Start Suite
-Suite Teardown Utils.Stop Suite
+Suite Teardown Utils.Stop Mininet
Library RequestsLibrary
Resource ../../../libraries/Utils.robot
+Resource ../../../variables/openflowplugin/Variables.robot
Variables ../../../variables/Variables.py
*** Variables ***
*** Test Cases ***
Check Stats for node 1
[Documentation] Get the stats for a node
- Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow:1
+ Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow%3A1
Check Stats for node 2
[Documentation] Get the stats for a node
- Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow:2
+ Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow%3A2
Check Stats for node 3
[Documentation] Get the stats for a node
- Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow:3
+ Wait Until Keyword Succeeds 10s 2s Check Nodes Stats openflow%3A3
Check Ports
[Documentation] Check all ports are present
@{list} Create List openflow:1:1 openflow:1:2 openflow:1:3 openflow:2:1 openflow:2:2
... openflow:2:3 openflow:3:1 openflow:3:2 openflow:3:3
- Wait Until Keyword Succeeds 10s 2s Check For Elements At URI ${OPERATIONAL_NODES_API} ${list}
+ Wait Until Keyword Succeeds 10s 2s Check For Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${list}
Check Ports STP status
[Documentation] Check the stp status of the ports (forwarding/discarding)
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${FORWARD} 4
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${DISCARD} 2
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${FORWARD} 4
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${DISCARD} 2
+
+Check Flows
+ [Documentation] Check all flows are present
+ [Tags] bug 6984 bug
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} "output-node-connector" 16
+ [Teardown] Report_Failure_Due_To_Bug 6984
Ping Test
[Documentation] Ping h1 to h2, verify no packet loss or duplicates
- # This sleep is needed because if the ping in the below WUKS is launched before the STP effectively removes the link,
- # it produces a packet storm in mininet that makes the test unresponsive.
- Sleep 1
Wait Until Keyword Succeeds 10s 2s Ping Works Good
Link Down
- [Documentation] Take link s1-s2 down and verify ping works
+ [Documentation] Take link s1-s2 down and verify ping works. This is not implemented.
[Tags] exclude
Write link s1 s2 down
Read Until mininet>
@{list} Create List ${DISCARD}
- Wait Until Keyword Succeeds 10s 2s Check For Elements Not At URI ${OPERATIONAL_NODES_API} ${list}
+ Wait Until Keyword Succeeds 10s 2s Check For Elements Not At URI ${RFC8040_OPERATIONAL_NODES_API} ${list}
Wait Until Keyword Succeeds 10s 2s Ping Works Good
Link Up
- [Documentation] Take link s1-s2 up and verify ping works
+ [Documentation] Take link s1-s2 up and verify ping works. This is not implemented.
[Tags] exclude
Write link s1 s2 up
Read Until mininet>
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${FORWARD} 4
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${DISCARD} 2
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${FORWARD} 4
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${DISCARD} 2
# This sleep is needed because if the ping in the below WUKS is launched before the STP effectively removes the link,
# it produces a packet storm in mininet that makes the test unresponsive.
Sleep 1
Wait Until Keyword Succeeds 10s 2s Ping Works Good
Remove Port
- [Documentation] Remove port s1-eth2 and verify ping works
+ [Documentation] Remove port s1-eth2 and verify ping works. This is not stable, should be rewritten to pick a port that is not blocked.
+ [Tags] exclude
Write sh ovs-vsctl del-port s1 s1-eth2
Read Until mininet>
Wait Until Keyword Succeeds 10s 2s Ping Works Good
Add Port
- [Documentation] Add port s1-eth2 and verify ping works
+ [Documentation] Add port s1-eth2 and verify ping works. This is not stable, should be rewritten to pick a port that is not blocked.
+ [Tags] exclude
Write sh ovs-vsctl add-port s1 s1-eth2 -- set interface s1-eth2 ofport=2
Read Until mininet>
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${FORWARD} 4
- Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${OPERATIONAL_NODES_API} ${DISCARD} 2
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${FORWARD} 4
+ Wait Until Keyword Succeeds 10s 2s Check For Specific Number Of Elements At URI ${RFC8040_OPERATIONAL_NODES_API} ${DISCARD} 2
# This sleep is needed because if the ping in the below WUKS is launched before the STP effectively removes the link,
# it produces a packet storm in mininet that makes the test unresponsive.
Sleep 1