Adding new suites which uses all xml files present in ./csit/variables/xmls 52/10952/2
authorPeter Gubka <pgubka@cisco.com>
Tue, 9 Sep 2014 16:14:53 +0000 (18:14 +0200)
committerPeter Gubka <pgubka@cisco.com>
Wed, 10 Sep 2014 10:21:51 +0000 (10:21 +0000)
These suites can be run as usual suites based in csit/suites/ directory
They do not influence any integration job

Change-Id: I995d935b6139c5b4e27a1793e9243d1f7d744ac4
Signed-off-by: Peter Gubka <pgubka@cisco.com>
test/csit/libraries/XmlComparator.py
test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/010_SM_add_upd_del_flows.txt [new file with mode: 0644]
test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/020_SM_sal_add_del_flows.txt [new file with mode: 0644]
test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/__init__.txt [new file with mode: 0644]

index f4c32a00b5bd82be4b75484bff715162d38ba87d..1a1c4532283fe6235beab6d5b494f75ef4fa129d 100644 (file)
@@ -297,3 +297,20 @@ class XmlComparator:
                 return False, 'Flow found with diferences {0}'.format(XMLtoDictParserTools.getDifferenceDict(nodeDict, origDict))
         return False, ''
 
+    def get_data_for_flow_put_update(self, xml):
+        # action only for yet
+        xml_dom_input = md.parseString( xml )
+        actionList = xml_dom_input.getElementsByTagName( 'action' )
+        if actionList is not None and len( actionList ) > 0 :
+            action = actionList[0]
+            for child in action.childNodes :
+                if child.nodeType == Element.ELEMENT_NODE:
+                    nodeKey = ( child.localName ).encode( 'utf-8', 'ignore' )
+                    if nodeKey != 'order' :
+                        if nodeKey != 'drop-action' :
+                            new_act = child.ownerDocument.createElement( 'drop-action' )
+                        else :
+                            new_act = child.ownerDocument.createElement( 'dec-mpls-ttl' )
+                        child.parentNode.replaceChild( new_act, child )
+        return xml_dom_input.toxml( encoding = 'utf-8' )
+
diff --git a/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/010_SM_add_upd_del_flows.txt b/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/010_SM_add_upd_del_flows.txt
new file mode 100644 (file)
index 0000000..2b6f692
--- /dev/null
@@ -0,0 +1,1335 @@
+*** Settings ***
+Documentation     Test suite for Stats Manager flows collection
+Library        OperatingSystem
+Library        Collections
+Library        XML
+Library        SSHLibrary
+Library        ../../../../csit/libraries/XmlComparator.py
+Variables      ../../../../csit/variables/Variables.py
+Library        ../../../../csit/libraries/RequestsLibrary.py
+Library        ../../../../csit/libraries/Common.py
+Suite Setup       Initialization Phase
+Suite Teardown    Teardown Phase
+
+
+*** Variables ***
+${XmlsDir}=       ${CURDIR}/../../../../csit/variables/xmls
+${switch_idx}=    1
+${switch_name}=   s${switch_idx}
+@{flowlist0}=     f1.xml  f2.xml  f3.xml  f4.xml  f5.xml  f6.xml  f7.xml  f8.xml  f9.xml  f10.xml  f11.xml  f12.xml  f13.xml  f14.xml  f15.xml  f16.xml  f17.xml  f18.xml  f19.xml  f20.xml  f21.xml  f22.xml  f23.xml  f24.xml  f25.xml  f26.xml  f27.xml  f28.xml  f29.xml  f30.xml  f31.xml  f32.xml  f33.xml  f34.xml  f35.xml  f36.xml  f37.xml  f38.xml  f39.xml  f40.xml  f41.xml  f42.xml  f43.xml  f44.xml  f45.xml  f46.xml  f47.xml  f48.xml  f49.xml  f101.xml  f102.xml  f103.xml  f104.xml  f105.xml  f106.xml  f107.xml  f108.xml  f109.xml  f110.xml  f111.xml  f112.xml  f113.xml  f114.xml  f201.xml  f202.xml  f203.xml  f204.xml  f205.xml  f206.xml  f207.xml  f208.xml  f209.xml  f210.xml  f211.xml  f214.xml  f217.xml  f218.xml  f219.xml  f220.xml  f221.xml
+
+
+*** Test Cases ***
+Test Add Flows Group 0
+   [Documentation]    Add all flows and waits for SM to collect data
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables  ${flowfile}
+     \       Run Keyword And Continue On Failure   Add Flow
+     Sleep  30s
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Test Is Flow 1 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f1.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 2 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f2.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 3 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f3.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 4 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f4.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 5 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f5.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 6 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f6.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 7 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f7.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 8 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f8.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 9 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f9.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 10 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f10.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 11 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f11.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 12 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f12.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 13 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f13.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 14 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f14.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 15 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f15.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 16 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f16.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 17 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f17.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 18 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f18.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 19 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f19.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 20 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f20.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 21 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f21.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 22 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f22.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 23 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f23.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 24 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f24.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 25 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f25.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 26 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f26.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 27 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f27.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 28 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f28.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 29 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f29.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 30 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f30.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 31 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f31.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 32 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f32.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 33 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f33.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 34 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f34.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 35 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f35.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 36 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f36.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 37 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f37.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 38 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f38.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 39 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f39.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 40 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f40.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 41 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f41.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 42 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f42.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 43 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f43.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 44 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f44.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 45 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f45.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 46 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f46.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 47 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f47.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 48 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f48.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 49 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f49.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 101 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f101.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 102 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f102.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 103 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f103.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 104 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f104.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 105 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f105.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 106 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f106.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 107 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f107.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 108 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f108.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 109 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f109.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 110 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f110.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 111 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f111.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 112 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f112.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 113 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f113.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 114 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f114.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 201 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f201.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 202 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f202.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 203 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f203.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 204 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f204.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 205 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f205.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 206 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f206.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 207 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f207.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 208 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f208.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 209 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f209.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 210 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f210.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 211 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f211.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 214 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f214.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 217 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f217.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 218 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f218.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 219 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f219.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 220 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f220.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 221 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f221.xml
+      Check Config Flow         ${True}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Update Flows Group 0
+   [Documentation]    Update all flows and waits for SM to collect data
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables  ${flowfile}
+     \       Run Keyword And Continue On Failure   Update Flow
+     Sleep  40s
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Test Is Flow 1 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f1.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 2 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f2.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 3 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f3.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 4 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f4.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 5 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f5.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 6 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f6.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 7 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f7.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 8 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f8.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 9 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f9.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 10 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f10.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 11 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f11.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 12 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f12.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 13 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f13.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 14 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f14.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 15 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f15.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 16 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f16.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 17 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f17.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 18 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f18.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 19 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f19.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 20 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f20.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 21 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f21.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 22 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f22.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 23 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f23.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 24 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f24.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 25 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f25.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 26 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f26.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 27 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f27.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 28 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f28.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 29 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f29.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 30 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f30.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 31 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f31.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 32 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f32.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 33 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f33.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 34 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f34.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 35 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f35.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 36 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f36.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 37 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f37.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 38 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f38.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 39 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f39.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 40 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f40.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 41 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f41.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 42 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f42.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 43 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f43.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 44 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f44.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 45 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f45.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 46 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f46.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 47 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f47.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 48 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f48.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 49 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f49.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 101 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f101.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 102 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f102.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 103 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f103.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 104 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f104.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 105 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f105.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 106 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f106.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 107 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f107.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 108 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f108.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 109 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f109.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 110 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f110.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 111 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f111.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 112 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f112.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 113 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f113.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 114 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f114.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 201 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f201.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 202 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f202.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 203 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f203.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 204 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f204.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 205 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f205.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 206 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f206.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 207 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f207.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 208 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f208.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 209 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f209.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 210 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f210.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 211 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f211.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 214 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f214.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 217 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f217.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 218 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f218.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 219 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f219.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 220 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f220.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Is Flow 221 Updated
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f221.xml
+      Check Config Flow         ${True}   ${upddata}
+      Check Operational Table   ${True}   ${upddata}
+Test Delete Flows Group 0
+   [Documentation]    Delete all flows and waits for SM to collect data
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables   ${flowfile}
+     \       Run Keyword And Continue On Failure   Delete Flow
+     Sleep  40s
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Test Is Flow 1 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f1.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 2 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f2.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 3 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f3.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 4 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f4.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 5 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f5.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 6 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f6.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 7 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f7.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 8 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f8.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 9 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f9.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 10 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f10.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 11 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f11.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 12 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f12.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 13 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f13.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 14 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f14.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 15 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f15.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 16 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f16.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 17 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f17.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 18 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f18.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 19 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f19.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 20 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f20.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 21 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f21.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 22 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f22.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 23 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f23.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 24 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f24.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 25 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f25.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 26 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f26.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 27 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f27.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 28 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f28.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 29 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f29.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 30 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f30.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 31 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f31.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 32 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f32.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 33 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f33.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 34 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f34.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 35 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f35.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 36 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f36.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 37 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f37.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 38 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f38.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 39 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f39.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 40 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f40.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 41 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f41.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 42 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f42.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 43 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f43.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 44 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f44.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 45 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f45.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 46 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f46.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 47 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f47.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 48 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f48.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 49 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f49.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 101 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f101.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 102 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f102.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 103 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f103.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 104 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f104.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 105 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f105.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 106 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f106.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 107 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f107.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 108 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f108.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 109 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f109.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 110 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f110.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 111 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f111.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 112 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f112.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 113 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f113.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 114 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f114.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 201 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f201.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 202 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f202.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 203 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f203.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 204 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f204.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 205 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f205.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 206 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f206.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 207 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f207.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 208 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f208.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 209 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f209.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 210 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f210.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 211 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f211.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 214 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f214.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 217 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f217.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 218 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f218.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 219 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f219.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 220 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f220.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 221 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f221.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+
+
+*** Keywords ***
+Init Flow Variables   [Arguments]   ${file}
+      ${data}=       OperatingSystem.Get File     ${XmlsDir}/${file}
+      ${xmlroot}=    Parse Xml    ${XmlsDir}/${file}
+      ${table_id}=   Get Element Text   ${xmlroot}   table_id
+      ${flow_id}=    Get Element Text   ${xmlroot}   id
+      ${flow_priority}=    Get Element Text   ${xmlroot}   priority
+      ${upddata}=    Get Data For Flow Put Update   ${data}
+      Set Suite Variable   ${table_id}
+      Set Suite Variable   ${flow_id}
+      Set Suite Variable   ${flow_priority}
+      Set Suite Variable   ${data}
+      Set Suite Variable   ${upddata}
+      Set Suite Variable   ${xmlroot}
+Check Config Flow   [Arguments]   ${expected}   ${expvalue}
+         ${presence_flow}   ${msg}=      Flow Presence Config Flow    ${expvalue}
+         ${msgf}=   Get Presence Failure Message    config    ${expected}    ${presence_flow}   ${msg} 
+         Should Be Equal    ${expected}  ${presence_flow}   msg=${msgf}
+Flow Presence Config Flow  [Arguments]   ${expvalue}
+         ${headers}=      Create Dictionary   Accept   application/xml
+         ${resp}=   Get  session  /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id}   headers=${headers}
+         Log  ${resp}
+         Log  ${resp.content}
+         Return From Keyword If   ${resp.status_code}!=200  ${False}   ${EMPTY}
+         ${pres}  ${msg}=  Is Flow Configured  ${expvalue}   ${resp.content}
+         Run Keyword If   '''${msg}'''!='${EMPTY}'   Log   ${msg}
+         Return From Keyword   ${pres}   ${msg}
+Check Operational Table  [Arguments]   ${expected}    ${expvalue}
+         ${presence_table}  ${msg}=  Flow Presence Operational Table   ${expvalue}
+         ${msgf}=   Get Presence Failure Message    operational    ${expected}    ${presence_table}   ${msg} 
+         Should Be Equal  ${expected}  ${presence_table}  msg=${msgf}
+Flow Presence Operational Table   [Arguments]  ${expvalue}
+         ${headers}=      Create Dictionary   Accept   application/xml
+         ${resp}=   Get   session   /restconf/operational/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}    headers=${headers}
+         Log   ${resp}
+         Log   ${resp.content}
+         Return From Keyword If    ${resp.status_code}!=200   ${False}   ${EMPTY}
+         ${pres}   ${msg}=   Is Flow Operational2   ${expvalue}   ${resp.content}
+         Run Keyword If   '''${msg}'''!='${EMPTY}'   Log   ${msg}
+         Return From Keyword   ${pres}   ${msg}
+Delete All Flows
+   [Documentation]    Deletes all flows
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables   ${flowfile}
+     \       Delete Flow
+Initialization Phase
+  [Documentation]   Initiate tcp connection with controller
+     Create Session   session   http://${CONTROLLER}:${PORT}   auth=${AUTH}   headers=${HEADERS_XML}
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Teardown Phase
+  [Documentation]   Closes tcp connection with controller and removes flows
+     Delete All Sessions
+Get Presence Failure Message   [Arguments]   ${ds}   ${expected}   ${presence}  ${diffmsg}
+         Return From Keyword If   '''${diffmsg}'''!='${EMPTY}'  Flow found in ${ds} data store but: ${diffmsg}
+         ${msgf}=   Set Variable If   ${expected}==${True}   The flow is expected in ${ds} data store, but   The flow is not expected in ${ds} data store, but
+         ${msgp}=   Set Variable If   ${presence}==${True}   it is present.   it is not present.
+         Return From Keyword   ${msgf} ${msgp}
+Add Flow
+      Log             ${data}
+      ${resp}=        Post    session   /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}   data=${data}
+      Log             ${resp.content}
+      ${msg}=  Set Variable   Adding flow for /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id} failed, http response ${resp.status_code} received.
+      Should Be Equal As Strings   ${resp.status_code}   204   msg=${msg}
+Update Flow
+       Log          ${upddata}
+       ${resp}=     Putxml    session  /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id}  data=${upddata}
+       Log             ${resp.content}
+       ${msg}=  Set Variable   Updating flow for /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id} failed, http response ${resp.status_code} received.
+       Should Be Equal As Strings  ${resp.status_code}   200    msg=${msg}
+Delete Flow
+      ${resp}=  Delete   session   /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id}
+      Log             ${resp.content}
+      ${msg}=  Set Variable  Delete flow for /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id} failed, http response ${resp.status_code} received.
+      Should Be Equal As Strings   ${resp.status_code}   200   msg=${msg}
diff --git a/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/020_SM_sal_add_del_flows.txt b/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/020_SM_sal_add_del_flows.txt
new file mode 100644 (file)
index 0000000..e08874e
--- /dev/null
@@ -0,0 +1,933 @@
+*** Settings ***
+Documentation     Test suite for Stats Manager flows collection
+Library        OperatingSystem
+Library        Collections
+Library        XML
+Library        SSHLibrary
+Library        ../../../../csit/libraries/XmlComparator.py
+Variables      ../../../../csit/variables/Variables.py
+Library        ../../../../csit/libraries/RequestsLibrary.py
+Library        ../../../../csit/libraries/Common.py
+Suite Setup       Initialization Phase
+Suite Teardown    Teardown Phase
+
+
+*** Variables ***
+${XmlsDir}=       ${CURDIR}/../../../../csit/variables/xmls
+${switch_idx}=    1
+${switch_name}=   s${switch_idx}
+@{flowlist0}=     f1.xml  f2.xml  f3.xml  f4.xml  f5.xml  f6.xml  f7.xml  f8.xml  f9.xml  f10.xml  f11.xml  f12.xml  f13.xml  f14.xml  f15.xml  f16.xml  f17.xml  f18.xml  f19.xml  f20.xml  f21.xml  f22.xml  f23.xml  f24.xml  f25.xml  f26.xml  f27.xml  f28.xml  f29.xml  f30.xml  f31.xml  f32.xml  f33.xml  f34.xml  f35.xml  f36.xml  f37.xml  f38.xml  f39.xml  f40.xml  f41.xml  f42.xml  f43.xml  f44.xml  f45.xml  f46.xml  f47.xml  f48.xml  f49.xml  f101.xml  f102.xml  f103.xml  f104.xml  f105.xml  f106.xml  f107.xml  f108.xml  f109.xml  f110.xml  f111.xml  f112.xml  f113.xml  f114.xml  f201.xml  f202.xml  f203.xml  f204.xml  f205.xml  f206.xml  f207.xml  f208.xml  f209.xml  f210.xml  f211.xml  f214.xml  f217.xml  f218.xml  f219.xml  f220.xml  f221.xml
+
+
+*** Test Cases ***
+Test Add Flows Group 0
+   [Documentation]    Add all flows and waits for SM to collect data
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables  ${flowfile}
+     \       Run Keyword And Continue On Failure   Add Flow
+     Sleep  30s
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Test Is Flow 1 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f1.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 2 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f2.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 3 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f3.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 4 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f4.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 5 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f5.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 6 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f6.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 7 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f7.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 8 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f8.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 9 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f9.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 10 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f10.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 11 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f11.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 12 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f12.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 13 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f13.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 14 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f14.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 15 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f15.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 16 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f16.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 17 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f17.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 18 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f18.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 19 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f19.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 20 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f20.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 21 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f21.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 22 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f22.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 23 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f23.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 24 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f24.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 25 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f25.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 26 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f26.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 27 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f27.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 28 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f28.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 29 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f29.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 30 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f30.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 31 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f31.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 32 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f32.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 33 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f33.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 34 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f34.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 35 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f35.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 36 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f36.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 37 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f37.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 38 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f38.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 39 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f39.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 40 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f40.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 41 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f41.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 42 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f42.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 43 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f43.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 44 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f44.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 45 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f45.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 46 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f46.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 47 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f47.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 48 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f48.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 49 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f49.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 101 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f101.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 102 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f102.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 103 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f103.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 104 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f104.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 105 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f105.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 106 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f106.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 107 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f107.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 108 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f108.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 109 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f109.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 110 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f110.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 111 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f111.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 112 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f112.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 113 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f113.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 114 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f114.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 201 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f201.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 202 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f202.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 203 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f203.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 204 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f204.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 205 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f205.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 206 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f206.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 207 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f207.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 208 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f208.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 209 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f209.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 210 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f210.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 211 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f211.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 214 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f214.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 217 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f217.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 218 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f218.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 219 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f219.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 220 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f220.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Is Flow 221 Added
+    [Documentation]    Checks if flow is configured and operational
+      Init Flow Variables       f221.xml
+      Check Config Flow         ${False}   ${data}
+      Check Operational Table   ${True}   ${data}
+Test Delete Flows Group 0
+   [Documentation]    Delete all flows and waits for SM to collect data
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables   ${flowfile}
+     \       Run Keyword And Continue On Failure   Delete Flow
+     Sleep  40s
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Test Is Flow 1 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f1.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 2 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f2.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 3 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f3.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 4 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f4.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 5 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f5.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 6 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f6.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 7 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f7.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 8 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f8.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 9 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f9.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 10 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f10.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 11 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f11.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 12 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f12.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 13 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f13.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 14 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f14.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 15 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f15.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 16 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f16.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 17 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f17.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 18 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f18.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 19 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f19.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 20 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f20.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 21 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f21.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 22 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f22.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 23 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f23.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 24 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f24.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 25 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f25.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 26 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f26.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 27 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f27.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 28 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f28.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 29 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f29.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 30 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f30.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 31 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f31.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 32 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f32.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 33 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f33.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 34 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f34.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 35 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f35.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 36 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f36.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 37 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f37.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 38 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f38.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 39 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f39.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 40 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f40.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 41 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f41.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 42 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f42.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 43 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f43.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 44 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f44.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 45 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f45.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 46 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f46.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 47 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f47.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 48 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f48.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 49 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f49.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 101 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f101.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 102 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f102.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 103 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f103.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 104 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f104.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 105 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f105.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 106 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f106.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 107 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f107.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 108 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f108.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 109 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f109.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 110 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f110.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 111 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f111.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 112 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f112.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 113 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f113.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 114 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f114.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 201 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f201.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 202 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f202.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 203 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f203.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 204 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f204.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 205 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f205.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 206 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f206.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 207 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f207.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 208 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f208.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 209 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f209.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 210 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f210.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 211 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f211.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 214 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f214.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 217 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f217.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 218 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f218.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 219 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f219.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 220 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f220.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+Test Is Flow 221 Deleted
+    [Documentation]    Checks if flow is not configured and operational 
+      Init Flow Variables       f221.xml
+      Check Config Flow         ${False}   ${upddata}
+      Check Operational Table   ${False}   ${upddata}
+
+
+*** Keywords ***
+Init Flow Variables   [Arguments]   ${file}
+      ${data}=       OperatingSystem.Get File     ${XmlsDir}/${file}
+      ${xmlroot}=    Parse Xml    ${XmlsDir}/${file}
+      ${table_id}=   Get Element Text   ${xmlroot}   table_id
+      ${flow_id}=    Get Element Text   ${xmlroot}   id
+      ${flow_priority}=    Get Element Text   ${xmlroot}   priority
+      ${upddata}=    Get Data For Flow Put Update   ${data}
+      Set Suite Variable   ${table_id}
+      Set Suite Variable   ${flow_id}
+      Set Suite Variable   ${flow_priority}
+      Set Suite Variable   ${data}
+      Set Suite Variable   ${upddata}
+      Set Suite Variable   ${xmlroot}
+Check Config Flow   [Arguments]   ${expected}   ${expvalue}
+         ${presence_flow}   ${msg}=      Flow Presence Config Flow    ${expvalue}
+         ${msgf}=   Get Presence Failure Message    config    ${expected}    ${presence_flow}   ${msg} 
+         Should Be Equal    ${expected}  ${presence_flow}   msg=${msgf}
+Flow Presence Config Flow  [Arguments]   ${expvalue}
+         ${headers}=      Create Dictionary   Accept   application/xml
+         ${resp}=   Get  session  /restconf/config/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}/flow/${flow_id}   headers=${headers}
+         Log  ${resp}
+         Log  ${resp.content}
+         Return From Keyword If   ${resp.status_code}!=200  ${False}   ${EMPTY}
+         ${pres}  ${msg}=  Is Flow Configured  ${expvalue}   ${resp.content}
+         Run Keyword If   '''${msg}'''!='${EMPTY}'   Log   ${msg}
+         Return From Keyword   ${pres}   ${msg}
+Check Operational Table  [Arguments]   ${expected}    ${expvalue}
+         ${presence_table}  ${msg}=  Flow Presence Operational Table   ${expvalue}
+         ${msgf}=   Get Presence Failure Message    operational    ${expected}    ${presence_table}   ${msg} 
+         Should Be Equal  ${expected}  ${presence_table}  msg=${msgf}
+Flow Presence Operational Table   [Arguments]  ${expvalue}
+         ${headers}=      Create Dictionary   Accept   application/xml
+         ${resp}=   Get   session   /restconf/operational/opendaylight-inventory:nodes/node/openflow:${switch_idx}/table/${table_id}    headers=${headers}
+         Log   ${resp}
+         Log   ${resp.content}
+         Return From Keyword If    ${resp.status_code}!=200   ${False}   ${EMPTY}
+         ${pres}   ${msg}=   Is Flow Operational2   ${expvalue}   ${resp.content}
+         Run Keyword If   '''${msg}'''!='${EMPTY}'   Log   ${msg}
+         Return From Keyword   ${pres}   ${msg}
+Delete All Flows
+   [Documentation]    Deletes all flows
+     :FOR   ${flowfile}   IN   @{flowlist0}
+     \       Log   ${flowfile}
+     \       Init Flow Variables   ${flowfile}
+     \       Delete Flow
+Initialization Phase
+  [Documentation]   Initiate tcp connection with controller
+     Create Session   session   http://${CONTROLLER}:${PORT}   auth=${AUTH}   headers=${HEADERS_XML}
+     Write    dpctl dump-flows -O OpenFlow13
+     Sleep  1s
+     ${switchouput}    Read
+     Log     ${switchouput}
+Teardown Phase
+  [Documentation]   Closes tcp connection with controller and removes flows
+     Delete All Sessions
+Get Presence Failure Message   [Arguments]   ${ds}   ${expected}   ${presence}  ${diffmsg}
+         Return From Keyword If   '''${diffmsg}'''!='${EMPTY}'  Flow found in ${ds} data store but: ${diffmsg}
+         ${msgf}=   Set Variable If   ${expected}==${True}   The flow is expected in ${ds} data store, but   The flow is not expected in ${ds} data store, but
+         ${msgp}=   Set Variable If   ${presence}==${True}   it is present.   it is not present.
+         Return From Keyword   ${msgf} ${msgp}
+Add Flow
+      ${req}=          Copy Element   ${xmlroot}
+      Remove Element   ${req}         id     clear_tail=True
+      Set Element Tag  ${req}         input
+      Set Element Attribute      ${req}   xmlns   urn:opendaylight:flow:service
+      Add Element   ${req}   <node>/inv:nodes/inv:node[inv:id="openflow:${switch_idx}"]</node>
+      ${nodeelm}=   Get Element   ${req}   node
+      Set Element Attribute   ${nodeelm}   xmlns:inv   urn:opendaylight:inventory
+      Log Element   ${req}
+      ${strxml}=   Element To String    ${req}
+      ${resp}=        Post    session   /restconf/operations/sal-flow:add-flow   data=${strxml} 
+      Log  ${resp.content}
+      Should Be Equal As Strings  ${resp.status_code}  200
+Delete Flow
+      ${req}=  Copy Element  ${xmlroot}
+      Remove Element  ${req}  id  clear_tail=True
+      Set Element Tag   ${req}   input
+      Set Element Attribute   ${req}  xmlns  urn:opendaylight:flow:service
+      Add Element  ${req}   <node>/inv:nodes/inv:node[inv:id="openflow:${switch_idx}"]</node>
+      ${nodeelm}=  Get Element   ${req}  node
+      Set Element Attribute   ${nodeelm}   xmlns:inv  urn:opendaylight:inventory
+      Log Element   ${req}
+      ${strxml}=   Element To String   ${req}
+      ${resp}=        Post    session   /restconf/operations/sal-flow:remove-flow  data=${strxml}
+      Log   ${resp.content}
+      Should Be Equal As Strings   ${resp.status_code}   200
diff --git a/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/__init__.txt b/test/tools/OF_Test/robot_suites/075__Flows_OF13_Stat_Manager_extended/__init__.txt
new file mode 100644 (file)
index 0000000..968bee6
--- /dev/null
@@ -0,0 +1,28 @@
+*** Settings ***
+Documentation     Test suite for the OpenDaylight base edition with of13, aimed for statistics manager
+Suite Setup       Start Suite
+Suite Teardown    Stop Suite
+Library           SSHLibrary
+
+*** Variables ***
+${start}          sudo mn --controller=remote,ip=${CONTROLLER} --topo tree,1 --switch ovsk,protocols=OpenFlow13
+
+*** Keywords ***
+Start Suite
+    Log    Start the test on the base edition
+    Open Connection    ${MININET}    prompt=>
+    Login With Public Key    ${MININET_USER}    ${USER_HOME}/.ssh/id_rsa    any
+    Write    sudo ovs-vsctl set-manager ptcp:6644
+    Write    sudo mn -c
+    Read Until   >
+    Write    ${start}
+    Read Until   mininet>
+
+Stop Suite
+    Log    Stop the test on the base edition
+    Read
+    Write    exit
+    Sleep    2
+    Read
+    Close Connection
+