X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Fsuites%2Fopenflowplugin%2FBug_Validation%2F6917.robot;h=95ebdce233e9f91fec53c631c09f2d4c3271513b;hb=HEAD;hp=444fc321b0fec566b599bd5cf270ea7990e3ef24;hpb=e70dd17a598fd3e1d0854ee5266e5e256fa362ea;p=integration%2Ftest.git diff --git a/csit/suites/openflowplugin/Bug_Validation/6917.robot b/csit/suites/openflowplugin/Bug_Validation/6917.robot index 444fc321b0..95ebdce233 100644 --- a/csit/suites/openflowplugin/Bug_Validation/6917.robot +++ b/csit/suites/openflowplugin/Bug_Validation/6917.robot @@ -1,55 +1,93 @@ *** Settings *** -Documentation Test suite for bug 6917 validation. -Suite Setup Initialization Phase -Suite Teardown Final Phase -Library XML -Library RequestsLibrary -Resource ../../../libraries/MininetKeywords.robot -Resource ../../../libraries/FlowLib.robot -Variables ../../../variables/Variables.py +Documentation Test suite for bug 6917 validation. + +Library XML +Library RequestsLibrary +Resource ../../../libraries/MininetKeywords.robot +Resource ../../../libraries/FlowLib.robot +Resource ../../../variables/Variables.robot +Resource ../../../variables/openflowplugin/Variables.robot + +Suite Setup Initialization Phase +Suite Teardown Final Phase + *** Variables *** -${XmlsDir} ${CURDIR}/../../../variables/xmls -${flowfile} f21.xml -${switch_idx} 1 -${switch_name} s${switch_idx} -${iteration} 5 +${XmlsDir} ${CURDIR}/../../../variables/xmls +${switch_idx} 1 +${switch_name} s${switch_idx} +${iteration} 4 + *** Test Cases *** -Bug 6917 +Add Delete Same Flow [Documentation] Iterate on add and delete flow until alien ID is found in Operational Datastore. - : FOR ${i} IN RANGE ${iteration} - \ Add And Delete Flow + FOR ${i} IN RANGE ${iteration} + Run Keyword And Continue On Failure Add And Delete Flow f21.xml + END [Teardown] Report_Failure_Due_To_Bug 6917 +Add Multiple Flows + [Documentation] Iterate on add and delete flow until alien ID is found in Operational Datastore. + Run Keyword And Continue On Failure Add Flow f20.xml + Run Keyword And Continue On Failure Add Flow f21.xml + Run Keyword And Continue On Failure Add Flow f22.xml + Run Keyword And Continue On Failure Add Flow f23.xml + [Teardown] Report_Failure_Due_To_Bug 6917 + + *** Keywords *** Initialization Phase [Documentation] Starts mininet and verify if topology is in operational datastore. ${mininet_conn_id}= MininetKeywords.Start Mininet Single Controller BuiltIn.Set Suite Variable ${mininet_conn_id} - RequestsLibrary.Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS_XML} - BuiltIn.Wait Until Keyword Succeeds 10s 1s Are Switches Connected Topo + RequestsLibrary.Create Session + ... session + ... http://${ODL_SYSTEM_IP}:${RESTCONFPORT} + ... auth=${AUTH} + ... headers=${HEADERS_XML} + BuiltIn.Wait Until Keyword Succeeds 10s 1s FlowLib.Check Switches In Topology 1 Final Phase [Documentation] Stops mininet. MininetKeywords.Stop Mininet And Exit ${mininet_conn_id} RequestsLibrary.Delete All Sessions -Are Switches Connected Topo - [Documentation] Checks wheather switches are connected to controller - ${resp}= RequestsLibrary.Get Request session ${OPERATIONAL_TOPO_API}/topology/flow:1 headers=${ACCEPT_XML} - Log ${resp.content} - ${count}= XML.Get Element Count ${resp.content} xpath=node - BuiltIn.Should Be Equal As Numbers ${count} 1 - Add And Delete Flow [Documentation] Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug. - Sleep 5 + [Arguments] ${flowfile} FlowLib.Create Flow Variables For Suite From XML File ${XmlsDir}/${flowfile} FlowLib.Add Flow Via Restconf ${switch_idx} ${table_id} ${data} BuiltIn.Wait Until Keyword Succeeds 10s 1s FlowLib.Check Operational Flow ${True} ${data} - FlowLib.Check Datastore Presence ${flowfile} ${True} ${True} ${False} ${True} + BuiltIn.Wait Until Keyword Succeeds + ... 10s + ... 1s + ... FlowLib.Check Datastore Presence + ... ${flowfile} + ... ${True} + ... ${True} + ... ${False} + ... ${True} FlowLib.Delete Flow Via Restconf ${switch_idx} ${table_id} ${flow_id} BuiltIn.Wait Until Keyword Succeeds 10s 1s FlowLib.Check Operational Flow ${False} ${data} FlowLib.Check Datastore Presence ${flowfile} ${False} ${False} ${True} + Sleep 5 [Teardown] BuiltIn.Run Keyword And Ignore Error FlowLib.Delete Flow Via Restconf ${switch_idx} ${table_id} ${flow_id} + +Add Flow + [Documentation] Add a Delete a Flow and verify presence in Datastore. The 5 sec sleep is required to reproduce the bug. + [Arguments] ${flowfile} + FlowLib.Create Flow Variables For Suite From XML File ${XmlsDir}/${flowfile} + FlowLib.Add Flow Via Restconf ${switch_idx} ${table_id} ${data} + BuiltIn.Wait Until Keyword Succeeds 10s 1s FlowLib.Check Operational Flow ${True} ${data} + BuiltIn.Wait Until Keyword Succeeds + ... 10s + ... 1s + ... FlowLib.Check Datastore Presence + ... ${flowfile} + ... ${True} + ... ${True} + ... ${False} + ... ${True} + Sleep 8 + [Teardown] BuiltIn.Run Keyword And Ignore Error RequestsLibrary.DELETE On Session session url=${RFC8040_NODES_API}