Merge "Migrate existing SRRouting tests to use the new functions"
diff --git a/TestON/JenkinsFile/JenkinsCommonFuncs.groovy b/TestON/JenkinsFile/JenkinsCommonFuncs.groovy
index 578b2d8..ea4eccd 100644
--- a/TestON/JenkinsFile/JenkinsCommonFuncs.groovy
+++ b/TestON/JenkinsFile/JenkinsCommonFuncs.groovy
@@ -119,6 +119,7 @@
       sudo cp *Flows* /var/jenkins/workspace/SR-log-${WikiPrefix}/
       sudo cp *Groups* /var/jenkins/workspace/SR-log-${WikiPrefix}/
       sudo cp *.tar.gz /var/jenkins/workspace/SR-log-${WikiPrefix}/
+      sudo cp t3-* /var/jenkins/workspace/SR-log-${WikiPrefix}/
       '''
   }
   return result
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
index e3d07b8..e5148d1 100755
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -2886,6 +2886,7 @@
         """
         count = self.groupAddedCount( deviceId, core )
         count = int( count ) if count else 0
+        main.log.debug( "found {} groups".format( count ) )
         return count if ((count > expectedGroupCount) if (comparison == 0) else (count == expectedGroupCount)) else main.FALSE
 
     def checkFlowAddedCount( self, deviceId, expectedFlowCount=0, core=False, comparison=0):
@@ -2906,6 +2907,7 @@
         """
         count = self.flowAddedCount( deviceId, core )
         count = int( count ) if count else 0
+        main.log.debug( "found {} flows".format( count ) )
         return count if ((count > expectedFlowCount) if (comparison == 0) else (count == expectedFlowCount)) else main.FALSE
 
     def getAllDevicesId( self ):
diff --git a/TestON/tests/HA/HAbackupRecover/HAbackupRecover.params.fabric b/TestON/tests/HA/HAbackupRecover/HAbackupRecover.params.fabric
index 333028b..3b19f14 100644
--- a/TestON/tests/HA/HAbackupRecover/HAbackupRecover.params.fabric
+++ b/TestON/tests/HA/HAbackupRecover/HAbackupRecover.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAbackupRecover/HAbackupRecover.py b/TestON/tests/HA/HAbackupRecover/HAbackupRecover.py
index 54d738e..e907b66 100644
--- a/TestON/tests/HA/HAbackupRecover/HAbackupRecover.py
+++ b/TestON/tests/HA/HAbackupRecover/HAbackupRecover.py
@@ -247,6 +247,7 @@
                                  onfail="Failed to rerun for election" )
 
         main.HA.commonChecks()
+        time.sleep(60)
 
     def CASE7( self, main ):
         """
diff --git a/TestON/tests/HA/HAclusterRestart/HAclusterRestart.params.fabric b/TestON/tests/HA/HAclusterRestart/HAclusterRestart.params.fabric
index 5607958..a6cec2f 100644
--- a/TestON/tests/HA/HAclusterRestart/HAclusterRestart.params.fabric
+++ b/TestON/tests/HA/HAclusterRestart/HAclusterRestart.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAcontinuousStopNodes/HAcontinuousStopNodes.params.fabric b/TestON/tests/HA/HAcontinuousStopNodes/HAcontinuousStopNodes.params.fabric
index fe36d12..cf095b9 100644
--- a/TestON/tests/HA/HAcontinuousStopNodes/HAcontinuousStopNodes.params.fabric
+++ b/TestON/tests/HA/HAcontinuousStopNodes/HAcontinuousStopNodes.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.params.fabric b/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.params.fabric
index 9dab0f4..ab5056e 100644
--- a/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.params.fabric
+++ b/TestON/tests/HA/HAfullNetPartition/HAfullNetPartition.params.fabric
@@ -54,14 +54,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAkillNodes/HAkillNodes.params.fabric b/TestON/tests/HA/HAkillNodes/HAkillNodes.params.fabric
index dbfbde3..f8074b7 100644
--- a/TestON/tests/HA/HAkillNodes/HAkillNodes.params.fabric
+++ b/TestON/tests/HA/HAkillNodes/HAkillNodes.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAsanity/HAsanity.params.fabric b/TestON/tests/HA/HAsanity/HAsanity.params.fabric
index 9a9d720..615d9fa 100644
--- a/TestON/tests/HA/HAsanity/HAsanity.params.fabric
+++ b/TestON/tests/HA/HAsanity/HAsanity.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAscaling/HAscaling.params.fabric b/TestON/tests/HA/HAscaling/HAscaling.params.fabric
index 1566713..6200c33 100644
--- a/TestON/tests/HA/HAscaling/HAscaling.params.fabric
+++ b/TestON/tests/HA/HAscaling/HAscaling.params.fabric
@@ -58,14 +58,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.params.fabric b/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.params.fabric
index b9f6bba..bedc412 100644
--- a/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.params.fabric
+++ b/TestON/tests/HA/HAsingleInstanceRestart/HAsingleInstanceRestart.params.fabric
@@ -53,14 +53,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAstopNodes/HAstopNodes.params.fabric b/TestON/tests/HA/HAstopNodes/HAstopNodes.params.fabric
index 9dab0f4..ab5056e 100644
--- a/TestON/tests/HA/HAstopNodes/HAstopNodes.params.fabric
+++ b/TestON/tests/HA/HAstopNodes/HAstopNodes.params.fabric
@@ -54,14 +54,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAswapNodes/HAswapNodes.params.fabric b/TestON/tests/HA/HAswapNodes/HAswapNodes.params.fabric
index 7ba6fd4..fd3b883 100644
--- a/TestON/tests/HA/HAswapNodes/HAswapNodes.params.fabric
+++ b/TestON/tests/HA/HAswapNodes/HAswapNodes.params.fabric
@@ -57,14 +57,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAupgrade/HAupgrade.params.fabric b/TestON/tests/HA/HAupgrade/HAupgrade.params.fabric
index bedea08..85476a2 100644
--- a/TestON/tests/HA/HAupgrade/HAupgrade.params.fabric
+++ b/TestON/tests/HA/HAupgrade/HAupgrade.params.fabric
@@ -57,14 +57,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/HAupgradeRollback/HAupgradeRollback.params.fabric b/TestON/tests/HA/HAupgradeRollback/HAupgradeRollback.params.fabric
index 20e0def..b80eb2d 100644
--- a/TestON/tests/HA/HAupgradeRollback/HAupgradeRollback.params.fabric
+++ b/TestON/tests/HA/HAupgradeRollback/HAupgradeRollback.params.fabric
@@ -57,14 +57,14 @@
 
     <topology>
         <files>
-            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/comcast_fabric.py</topo>
+            <topo>~/TestON/tests/USECASE/SegmentRouting/dependencies/fabric.py</topo>
             <dep1>~/TestON/tests/USECASE/SegmentRouting/dependencies/trellislib.py</dep1>
             <dep2>~/TestON/tests/USECASE/SegmentRouting/dependencies/routinglib.py</dep2>
         </files>
-        <topoFile>comcast_fabric.py</topoFile>
+        <topoFile>fabric.py</topoFile>
         <args> --dhcp=0 --routers=0 --ipv6=0 --ipv4=1 </args>
-        <configPath>/USECASE/SegmentRouting/SRRouting/dependencies/json/</configPath>
-        <configName>COMCAST_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
+        <configPath>/HA/dependencies/json/</configPath>
+        <configName>TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json</configName>
     </topology>
     <CTRL>
         <port1>6653</port1>
diff --git a/TestON/tests/HA/dependencies/HA.py b/TestON/tests/HA/dependencies/HA.py
index 68134ca..0e5da1d 100644
--- a/TestON/tests/HA/dependencies/HA.py
+++ b/TestON/tests/HA/dependencies/HA.py
@@ -3894,14 +3894,15 @@
                                         "ONOS:\nPushed: {}\nONOS: {}".format( ctrl.pprint( pushedInterface ),
                                                                               ctrl.pprint( onosInterface ) ) )
 
-        # Compare pushed host config
-        for hid, pushedHost in pushedNetCfg[ 'hosts' ].items():
-            onosHost = onosNetCfg[ 'hosts' ].get( hid.lower() )
-            if pushedHost != onosHost:
-                cfgResult = False
-                main.log.error( "Pushed Network configuration does not match what is in " +
-                                "ONOS:\nPushed: {}\nONOS: {}".format( ctrl.pprint( pushedHost),
-                                                                      ctrl.pprint( onosHost ) ) )
+        if pushedNetCfg.get( 'hosts' ) is not None:
+            # Compare pushed host config
+            for hid, pushedHost in pushedNetCfg[ 'hosts' ].items():
+                onosHost = onosNetCfg[ 'hosts' ].get( hid.lower() )
+                if pushedHost != onosHost:
+                    cfgResult = False
+                    main.log.error( "Pushed Network configuration does not match what is in " +
+                                    "ONOS:\nPushed: {}\nONOS: {}".format( ctrl.pprint( pushedHost),
+                                                                          ctrl.pprint( onosHost ) ) )
         utilities.assert_equals( expect=True,
                                  actual=cfgResult,
                                  onpass="Net Cfg set",
diff --git a/TestON/tests/HA/dependencies/json/TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json b/TestON/tests/HA/dependencies/json/TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json
new file mode 100644
index 0000000..330c9d1
--- /dev/null
+++ b/TestON/tests/HA/dependencies/json/TRELLIS_CONFIG_ipv4=1_ipv6=0_dhcp=0_routers=0.json
@@ -0,0 +1,307 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.1.0.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.1.10.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.0.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.30.254/24" ],
+                    "vlan-untagged": 15
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.20.254/24" ],
+                    "vlan-tagged": [30]
+                }
+            ]
+        },
+        "of:0000000000000003/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.10.254/24" ],
+                    "vlan-tagged": [20]
+                }
+            ]
+        },
+	"of:0000000000000003/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.40.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        },
+        "of:0000000000000003/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.30.254/24" ],
+                    "vlan-untagged": 15
+                }
+            ]
+        },
+        "of:0000000000000003/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.2.20.254/24" ],
+                    "vlan-tagged": [30]
+                }
+            ]
+        },
+        "of:0000000000000004/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.0.254/24" ],
+                    "vlan-tagged": [30]
+                }
+            ]
+        },
+        "of:0000000000000004/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.10.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        },
+        "of:0000000000000004/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.30.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        },
+        "of:0000000000000005/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.20.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        },
+        "of:0000000000000005/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.10.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        },
+        "of:0000000000000005/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.3.30.254/24" ],
+                    "vlan-tagged": [40]
+                }
+            ]
+        }
+    },
+    "hosts" : {
+        "00:aa:00:00:00:01/None" : {
+		"basic": {
+			"locations": ["of:0000000000000001/3"],
+			"ips": ["10.1.0.1"]
+		     }
+	    },
+	"00:aa:00:00:01:01/None" : {
+		"basic": {
+			"locations": ["of:0000000000000001/4"],
+			"ips": ["10.1.10.1"]
+		     }
+	    },
+	"00:aa:00:00:00:02/None" : {
+		"basic": {
+			"locations": ["of:0000000000000002/6"],
+			"ips": ["10.2.0.1"]
+		     }
+	    },
+	"00:aa:00:00:00:03/None" : {
+		"basic": {
+			"locations": ["of:0000000000000002/7", "of:0000000000000003/6"],
+			"ips": ["10.2.30.1"]
+		     }
+	    },
+	"00:aa:00:00:00:04/30" : {
+		"basic": {
+			"locations": ["of:0000000000000003/7","of:0000000000000002/8"],
+			"ips": ["10.2.20.1"]
+		     }
+	    },
+	"00:aa:00:00:00:05/20" : {
+		"basic": {
+			"locations": ["of:0000000000000003/8"],
+			"ips": ["10.2.10.1"]
+		     }
+	    },
+	"00:aa:00:00:01:05/40" : {
+		"basic": {
+			"locations": ["of:0000000000000003/9"],
+			"ips": ["10.2.40.1"]
+		     }
+	    },
+	"00:aa:00:00:00:06/30" : {
+		"basic": {
+			"locations": ["of:0000000000000004/6"],
+			"ips": ["10.3.0.1"]
+		     }
+	    },
+	"00:aa:00:00:00:07/40" : {
+		"basic": {
+			"locations": ["of:0000000000000005/6", "of:0000000000000004/7"],
+			"ips": ["10.3.10.1"]
+		     }
+	    },
+	"00:aa:00:00:00:08/40" : {
+		"basic": {
+			"locations": ["of:0000000000000004/8","of:0000000000000005/7"],
+			"ips": ["10.3.30.1"]
+		     }
+	    },
+	"00:aa:00:00:00:0A/40" : {
+		"basic": {
+			"locations": ["of:0000000000000005/8"],
+			"ips": ["10.3.20.1"]
+		     }
+	    }
+    },
+    "devices" : {
+        "of:0000000000000001" : {
+            "segmentrouting" : {
+                "name" : "s001",
+                "ipv4NodeSid" : 1001,
+                "ipv4Loopback" : "192.168.0.1",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":34,
+		"longitude":-105
+            }
+        },
+        "of:0000000000000002" : {
+            "segmentrouting" : {
+                "name" : "s002",
+                "ipv4NodeSid" : 1002,
+                "ipv4Loopback" : "192.168.0.2",
+                "routerMac" : "00:00:00:00:00:02",
+                "isEdgeRouter" : true,
+                "pairLocalPort" : 5,
+                "pairDeviceId": "of:0000000000000003",
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":34,
+		"longitude":-95
+            }
+        },
+        "of:0000000000000003" : {
+            "segmentrouting" : {
+                "name" : "s003",
+                "ipv4NodeSid" : 1003,
+                "ipv4Loopback" : "192.168.0.3",
+                "routerMac" : "00:00:00:00:00:02",
+                "isEdgeRouter" : true,
+                "pairLocalPort" : 5,
+                "pairDeviceId": "of:0000000000000002",
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":34,
+		"longitude":-90
+            }
+        },
+        "of:0000000000000004" : {
+            "segmentrouting" : {
+                "name" : "s004",
+                "ipv4NodeSid" : 1004,
+                "ipv4Loopback" : "192.168.0.4",
+                "routerMac" : "00:00:00:00:00:04",
+                "isEdgeRouter" : true,
+                "pairLocalPort" : 5,
+                "pairDeviceId": "of:0000000000000005",
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":34,
+		"longitude":-85
+            }
+        },
+        "of:0000000000000005" : {
+            "segmentrouting" : {
+                "name" : "s005",
+                "ipv4NodeSid" : 1005,
+                "ipv4Loopback" : "192.168.0.5",
+                "routerMac" : "00:00:00:00:00:04",
+                "isEdgeRouter" : true,
+                "pairLocalPort" : 5,
+                "pairDeviceId": "of:0000000000000004",
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":34,
+		"longitude":-80
+            }
+        },
+        "of:0000000000000101" : {
+            "segmentrouting" : {
+                "name" : "s101",
+                "ipv4NodeSid" : 1101,
+                "ipv4Loopback" : "192.168.0.101",
+                "routerMac" : "00:00:00:00:01:01",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs",
+		"latitude":42,
+                "longitude":-100
+            }
+        },
+        "of:0000000000000102" : {
+            "segmentrouting" : {
+                "name" : "s102",
+                "ipv4NodeSid" : 1102,
+                "ipv4Loopback" : "192.168.0.102",
+                "routerMac" : "00:00:00:00:01:02",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                 "driver" : "ofdpa-ovs",
+		 "latitude":42,
+		 "longitude":-95
+            }
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRRouting/SRRouting.params b/TestON/tests/USECASE/SegmentRouting/SRRouting/SRRouting.params
index e19bd34..e699d81 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRRouting/SRRouting.params
+++ b/TestON/tests/USECASE/SegmentRouting/SRRouting/SRRouting.params
@@ -7,8 +7,8 @@
     </GRAPH>
 
     <SCALE>
-        <size>3</size>
-        <max>3</max>
+        <size>7</size>
+        <max>7</max>
     </SCALE>
 
     <DEPENDENCY>
diff --git a/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
index 5ebe5dc..071724e 100644
--- a/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
+++ b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
@@ -124,6 +124,8 @@
             ctrl.CLI.logSet( "DEBUG", "org.onosproject.routeservice.impl" )
             ctrl.CLI.logSet( "DEBUG", "org.onosproject.routeservice.store" )
             ctrl.CLI.logSet( "DEBUG", "org.onosproject.routing.fpm" )
+            ctrl.CLI.logSet( "TRACE", "org.onosproject.events" )
+            ctrl.CLI.logSet( "DEBUG", "org.onosproject.mcast" )
 
     @staticmethod
     def loadCount( main ):
@@ -377,20 +379,20 @@
             onfail="Flow count looks wrong. " )
 
     @staticmethod
-    def checkFlowEqualityByDpid( main, dpid, flowCount, sleep=10):
+    def checkFlowEqualityByDpid( main, dpid, flowCount, sleep=10 ):
         main.step(
                 " Check whether the flow count of device %s is equal to %s" % ( dpid, flowCount ) )
         count = utilities.retry( main.Cluster.active( 0 ).CLI.checkFlowAddedCount,
                                  main.FALSE,
-                                 args=( dpid, flowCount, False, 1),
+                                 args=( dpid, flowCount, False, 1 ),
                                  attempts=5,
                                  sleep=sleep )
 
         utilities.assertEquals(
                 expect=True,
                 actual=( int( count ) == flowCount ),
-                onpass="Flow count looks correct: " + str(count) ,
-                onfail="Flow count looks wrong, should be " + str(flowCount))
+                onpass="Flow count looks correct: " + str( count ) ,
+                onfail="Flow count looks wrong. found {},  should be {}.".format( count, flowCount ) )
 
     @staticmethod
     def checkGroupEqualityByDpid( main, dpid, groupCount, sleep=10):
@@ -405,22 +407,22 @@
         utilities.assertEquals(
                 expect=True,
                 actual=( count == groupCount ),
-                onpass="Group count looks correct: " + str(count) ,
-                onfail="Group count looks wrong: should be " + str(groupCount))
+                onpass="Group count looks correct: " + str( count ) ,
+                onfail="Group count looks wrong. found {},  should be {}.".format( count, groupCount ) )
 
     @staticmethod
-    def checkFlowsGroupsFromFile(main):
+    def checkFlowsGroupsFromFile( main ):
 
         for dpid, values in main.count.items():
             flowCount = values["flows"]
             groupCount = values["groups"]
-            main.log.report( "Check flow count for dpid " + str(dpid) +
-                             ", should be " + str(flowCount))
-            Testcaselib.checkFlowEqualityByDpid(main, dpid, flowCount)
+            main.log.report( "Check flow count for dpid " + str( dpid ) +
+                             ", should be " + str( flowCount ) )
+            Testcaselib.checkFlowEqualityByDpid( main, dpid, flowCount )
 
-            main.log.report( "Check group count for dpid " + str(dpid) +
-                             ", should be " + str(groupCount))
-            Testcaselib.checkGroupEqualityByDpid(main, dpid, groupCount)
+            main.log.report( "Check group count for dpid " + str( dpid ) +
+                             ", should be " + str( groupCount ) )
+            Testcaselib.checkGroupEqualityByDpid( main, dpid, groupCount )
 
         return
 
@@ -754,7 +756,7 @@
 
             nodeResults = utilities.retry( main.Cluster.nodesCheck,
                                            False,
-                                           attempts=5,
+                                           attempts=10,
                                            sleep=10 )
             utilities.assert_equals( expect=True, actual=nodeResults,
                                      onpass="Nodes check successful",