SRBridgingvlan tagged, untagged and native

Change-Id: I804e4808a7bd22e7662ae06e5d82c2cf03d3efc3
diff --git a/TestON/drivers/common/cli/emulator/scapyclidriver.py b/TestON/drivers/common/cli/emulator/scapyclidriver.py
index 1ff0d6f..db4a721 100644
--- a/TestON/drivers/common/cli/emulator/scapyclidriver.py
+++ b/TestON/drivers/common/cli/emulator/scapyclidriver.py
@@ -344,6 +344,46 @@
             main.log.exception( self.name + ": Uncaught exception!" )
             main.cleanAndExit()
 
+    def buildVLAN( self, **kwargs ):
+        """
+        Build a VLAN frame
+        """
+        try:
+            main.log.debug( self.name + ": Building VLAN Frame" )
+            # Set the IP frame
+            cmd = 'vlan = Dot1Q( '
+            options = []
+            for key, value in kwargs.iteritems():
+                if isinstance( value, str ):
+                    value = '"' + value + '"'
+                options.append( str( key ) + "=" + str( value ) )
+            cmd += ", ".join( options )
+            cmd += ' )'
+            self.handle.sendline( cmd )
+            self.handle.expect( self.scapyPrompt )
+            response = self.cleanOutput( self.handle.before )
+            if "Traceback" in response:
+                # KeyError, SyntaxError, ...
+                main.log.error( "Error in sending command: " + response )
+                return main.FALSE
+            self.handle.sendline( "packet = ether/ip/vlan" )
+            self.handle.expect( self.scapyPrompt )
+            response = self.cleanOutput( self.handle.before )
+            if "Traceback" in response:
+                # KeyError, SyntaxError, ...
+                main.log.error( "Error in sending command: " + response )
+                return main.FALSE
+            return main.TRUE
+        except pexpect.TIMEOUT:
+            main.log.exception( self.name + ": Command timed out" )
+            return main.FALSE
+        except pexpect.EOF:
+            main.log.exception( self.name + ": connection closed." )
+            main.cleanAndExit()
+        except Exception:
+            main.log.exception( self.name + ": Uncaught exception!" )
+            main.cleanAndExit()
+
     def buildIPv6( self, **kwargs ):
         """
         Build an IPv6 frame
diff --git a/TestON/drivers/common/cli/networkdriver.py b/TestON/drivers/common/cli/networkdriver.py
index 78f6464..6d46c1e 100755
--- a/TestON/drivers/common/cli/networkdriver.py
+++ b/TestON/drivers/common/cli/networkdriver.py
@@ -538,6 +538,7 @@
                     hostPair[ 0 ].addRoutes()
                     hostPair[ 0 ].buildEther( src=srcMac, dst=dstMac )
                     hostPair[ 0 ].buildIP( src=srcIPs[0], dst=dstIPs[0] )
+                    hostPair[ 0 ].buildVLAN( vlan=[102, 103] )
                     hostPair[ 0 ].buildICMP( )
                     hostPair[ 0 ].sendPacket( iface=srcIface )
 
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.py b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.py
index dfd9dc0..dc2fca0 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.py
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.py
@@ -193,6 +193,7 @@
                             topology='2x4',
                             onosNodes=3,
                             description="Bridging test between two untagged hosts on vlan-untagged port" )
+
     def CASE9( self, main ):
         """
         Tests connectivity between two untagged hosts
@@ -212,7 +213,7 @@
         except ( NameError, AttributeError ):
             main.funcs = SRBridgingTest()
         main.funcs.runTest( main,
-                            test_idx=7,
+                            test_idx=9,
                             topology='2x2 dual-linked',
                             onosNodes=3,
                             description="Bridging test between two untagged hosts on vlan-untagged port" )
@@ -417,6 +418,31 @@
                             description="Bridging test between two tagged hosts",
                             vlan=[ 10, 10, 20, 20 ] )
 
+    def CASE19( self, main ):
+        """
+        Tests connectivity between two tagged hosts
+        (Ports are configured as vlan-tagged)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=19,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two tagged hosts"
+                            vlan=[ 10, 10, 20, 20 ] )
+
     def CASE21( self, main ):
         """
         Tests connectivity between two untagged hosts
@@ -609,6 +635,30 @@
                             onosNodes=3,
                             description="Bridging test between two untagged hosts on vlan-native port" )
 
+    def CASE29( self, main ):
+        """
+        Tests connectivity between two untagged hosts
+        (Ports are configured as vlan-native with vlan-tagged)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=29,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two untagged hosts on vlan-native port" )
+
     def CASE31( self, main ):
         """
         Tests connectivity between two untagged hosts
@@ -817,6 +867,31 @@
                            description="Bridging test between two untagged hosts, "
                                        "one on vlan-untagged port and the other on vlan-native port" )
 
+    def CASE39( self, main ):
+        """
+        Tests connectivity between two untagged hosts
+        (Ports are configured as vlan-native and vlan-tagged, another with vlan-untagged)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=39,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two untagged hosts, "
+                                        "one on vlan-untagged port and the other on vlan-native port" )
+
     def CASE41( self, main ):
         """
         Tests connectivity between untagged host and tagged host
@@ -1025,6 +1100,32 @@
                             description="Bridging test between untagged host and tagged host",
                             vlan=[ 0, 10, 0, 20 ] )
 
+    def CASE49( self, main ):
+        """
+        Tests connectivity between untagged host and tagged host
+        (Ports are configured as vlan-untagged and
+        vlan-tagged with same vlan-id, respectively)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=49,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two untagged hostand tagged host",
+                            vlan=[ 102, 103 ] )
+
     def CASE51( self, main ):
         """
         Tests connectivity between two untagged hosts with different vlan id
@@ -1217,6 +1318,30 @@
                             onosNodes=3,
                             description="Bridging test between two untagged hosts with different vlan id" )
 
+    def CASE59( self, main ):
+        """
+        Tests connectivity between two untagged hosts with different vlan id
+        (Ports are configured as vlan-untagged 10 and 20, respectively)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=59,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two untagged hosts with different vlan-id" )
+
     def CASE61( self, main ):
         """
         Tests connectivity between two tagged hosts with different vlan id
@@ -1417,6 +1542,31 @@
                             description="Bridging test between two tagged hosts with different vlan id",
                             vlan=[ 10, 20, 30, 40 ] )
 
+    def CASE69( self, main ):
+        """
+        Tests connectivity between two tagged hosts with different vlan id
+        (Ports are configured as vlan-tagged 10 and 20, respectively)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=69,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between two tagged hosts with different vlan id",
+                            vlan=[ 10, 20, 30, 40 ] )
+
     def CASE71( self, main ):
         """
         Tests connectivity between untagged and tagged hosts with different vlan id
@@ -1616,3 +1766,28 @@
                             onosNodes=3,
                             description="Bridging test between untagged and tagged hosts with different vlan id",
                             vlan=[ 0, 20, 0, 40 ] )
+
+    def CASE79( self, main ):
+        """
+        Tests connectivity between untagged and tagged hosts with different vlan id
+        (Ports are configured as vlan-untagged 10 and vlan-tagged 20, respectively)
+
+        Sets up 3 ONOS instances
+        Start 2x2 leaf-spine topology
+        Pingall
+        """
+        try:
+            from tests.USECASE.SegmentRouting.SRBridging.dependencies.SRBridgingTest import SRBridgingTest
+        except ImportError:
+            main.log.error( "SRBridgingTest not found. Exiting the test" )
+            main.cleanAndExit()
+        try:
+            main.funcs
+        except ( NameError, AttributeError ):
+            main.funcs = SRBridgingTest()
+        main.funcs.runTest( main,
+                            test_idx=79,
+                            topology='2x2 dual-linked',
+                            onosNodes=3,
+                            description="Bridging test between untagged and tagged hosts with different vlan idt",
+                            vlan=[ 0, 20, 0, 40 ] )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo
index 6ab0e2d..bfb61b7 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo
@@ -16,8 +16,8 @@
                 <karaf_password>rocks</karaf_password>
                 <node_username>sdn</node_username>
                 <node_password>rocks</node_password>
-                <karafPrompt_username></karafPrompt_username>
-                <karafPrompt_password></karafPrompt_password>
+                <karafPrompt_username>karaf</karafPrompt_username>
+                <karafPrompt_password>karaf</karafPrompt_password>
                 <web_user></web_user>
                 <web_pass></web_pass>
                 <rest_port></rest_port>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo.2x2.physical b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo.2x2.physical
index 74b8689..9f7e105 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo.2x2.physical
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/SRBridging.topo.2x2.physical
@@ -15,6 +15,8 @@
                 <diff_clihost>True</diff_clihost> # if it has different host other than localhost for CLI. True or empty. OC# will be used if True.
                 <karaf_username>karaf</karaf_username>
                 <karaf_password>karaf</karaf_password>
+                <karafPrompt_username>karaf</karafPrompt_username>
+                <karafPrompt_password>karaf</karafPrompt_password>
                 <web_user>karaf</web_user>
                 <web_pass>karaf</web_pass>
                 <rest_port></rest_port>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/SRBridgingTest.py b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/SRBridgingTest.py
index 1ffa9c2..4e5e5fb 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/SRBridgingTest.py
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/SRBridgingTest.py
@@ -55,19 +55,20 @@
             if self.topo[ topology ][ 'dual-homed' ]:
                 links += ( leaves - 1 ) * 2
 
-            main.cfgName = 'CASE%01d%01d' % ( test_idx / 10, ( ( test_idx - 1 ) % 10 ) % 4 + 1 )
+            main.cfgName = 'CASE%01d%01d' % ( test_idx / 10, test_idx % 10 )
+            print (main.cfgName, "Testcase : CASE 09")
             main.Cluster.setRunningNode( onosNodes )
             run.installOnos( main, skipPackage=skipPackage, cliSleep=5 )
-            if main.useBmv2:
-                switchPrefix = main.params[ 'DEPENDENCY' ].get( 'switchPrefix', '' )
-                if switchPrefix is None or "None":
-                    switchPrefix = ''
-                # Translate configuration file from OVS-OFDPA to BMv2 driver
-                translator.bmv2ToOfdpa( main )  # Try to cleanup if switching between switch types
-                translator.ofdpaToBmv2( main, switchPrefix=switchPrefix )
-            else:
-                translator.bmv2ToOfdpa( main )
             if not main.persistentSetup:
+                if main.useBmv2:
+                    switchPrefix = main.params[ 'DEPENDENCY' ].get( 'switchPrefix', '' )
+                    if switchPrefix is None or "None":
+                        switchPrefix = ''
+                    # Translate configuration file from OVS-OFDPA to BMv2 driver
+                    translator.bmv2ToOfdpa( main )  # Try to cleanup if switching between switch types
+                    translator.ofdpaToBmv2( main, switchPrefix=switchPrefix )
+                else:
+                    translator.bmv2ToOfdpa( main )
                 suf = main.params.get( 'jsonFileSuffix', None)
                 if suf:
                     run.loadJson( main, suffix=suf )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE05.chart
similarity index 98%
rename from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
rename to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE05.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE05.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE06.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE06.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE06.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE07.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE07.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE07.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE08.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE08.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE08.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE15.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE15.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE15.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE16.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE16.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE16.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE17.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE17.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE17.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE18.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE18.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE18.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE19.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE19.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE19.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE25.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE25.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE25.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE26.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE26.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE26.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE27.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE27.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE27.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE28.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE28.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE28.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE29.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE29.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE29.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE35.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE35.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE35.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE36.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE36.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE36.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE37.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE37.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE37.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE38.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE38.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE38.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE39.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE39.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE39.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE45.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE45.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE45.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE46.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE46.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE46.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE47.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE47.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE47.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE48.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE48.chart
new file mode 100644
index 0000000..38f0a1b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE48.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE49.chart
similarity index 98%
copy from TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
copy to TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE49.chart
index 4438f56..f1fe795 100644
--- a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE01.chart
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE49.chart
@@ -1,4 +1,4 @@
 {
   "leaf1": {"expect": "True",
     "hosts":["h1", "h2"]}
-}
\ No newline at end of file
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE55.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE55.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE55.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE56.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE56.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE56.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE57.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE57.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE57.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE58.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE58.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE58.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE59.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE59.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE59.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE65.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE65.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE65.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE66.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE66.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE66.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE67.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE67.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE67.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE68.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE68.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE68.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE69.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE69.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE69.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE75.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE75.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE75.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE76.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE76.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE76.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE77.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE77.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE77.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE78.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE78.chart
new file mode 100644
index 0000000..8cc036a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE78.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf2": {"expect": "False",
+    "hosts":["h3", "h4"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE79.chart b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE79.chart
new file mode 100644
index 0000000..7643003
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/chart/CASE79.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE09.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE09.cfg
new file mode 100644
index 0000000..3300a4b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE09.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-untagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-untagged":102
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE19.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE19.cfg
new file mode 100644
index 0000000..352ba54
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE19.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-tagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-tagged":103
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE29.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE29.cfg
new file mode 100644
index 0000000..9f97e82
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE29.cfg
@@ -0,0 +1,24 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-native":103
+                    "vlan-tagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-native":103
+                    "vlan-untagged":102
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE39.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE39.cfg
new file mode 100644
index 0000000..6948335
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE39.cfg
@@ -0,0 +1,25 @@
+"ports":{
+        "device:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-native":103,
+                    "vlan-tagged":[
+                        102
+                    ]
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-untagged":103
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE49.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE49.cfg
new file mode 100644
index 0000000..89ceb77
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE49.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-untagged":102
+                }
+            ]
+        },
+         "decive:leaf1/56":
+{           "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-tagged":103
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE59.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE59.cfg
new file mode 100644
index 0000000..8c462ce
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE59.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-untagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-untagged":103
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE69.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE69.cfg
new file mode 100644
index 0000000..352ba54
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE69.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-tagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-tagged":103
+                }
+            ]
+        }
+    }
diff --git a/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE79.cfg b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE79.cfg
new file mode 100644
index 0000000..b3b04f2
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRBridging/dependencies/netcfg/CASE79.cfg
@@ -0,0 +1,22 @@
+"ports":{
+        "decive:leaf1/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.1/24"
+                    ],
+                    "vlan-untagged":102
+                }
+            ]
+        },
+        "device:leaf2/56":{
+            "interfaces":[
+                {
+                    "ips":[
+                        "192.168.103.2/24"
+                    ],
+                    "vlan-tagged":103
+                }
+            ]
+        }
+    }