diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index 6fd807d..d9b333a 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -3663,6 +3663,84 @@
                 response = self.handle.before
                 main.log.info( "====> %s ", response )
 
+                # update Mininet node variables
+                main.log.info( "Update Mininet node variables" )
+                cmd5 = "px %s.defaultIntf().name='%s'" % ( host, vintf )
+                self.handle.sendline( cmd5 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
+                cmd6 = "px %s.nameToIntf['%s']=%s.defaultIntf()" % ( host, vintf, host )
+                self.handle.sendline( cmd6 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
+                return main.TRUE
+            except pexpect.TIMEOUT:
+                main.log.error( self.name + ": TIMEOUT exception found" )
+                main.log.error( self.name + ":     " + self.handle.before )
+                main.cleanAndExit()
+            except pexpect.EOF:
+                main.log.error( self.name + ": EOF exception found" )
+                main.log.error( self.name + ":     " + self.handle.before )
+                return main.FALSE
+            except Exception:
+                main.log.exception( self.name + ": Uncaught exception!" )
+                return main.FALSE
+
+    def removeVLAN( self, host, intf ):
+        """
+           Remove vlan tag from a host.
+           Dependencies:
+               This class depends on the "vlan" package
+               $ sudo apt-get install vlan
+           Configuration:
+               Load the 8021q module into the kernel
+               $sudo modprobe 8021q
+
+               To make this setup permanent:
+               $ sudo su -c 'echo "8021q" >> /etc/modules'
+           """
+        if self.handle:
+            try:
+                # get the ip address of the host
+                main.log.info( "Get the ip address of the host" )
+                ipaddr = self.getIPAddress( host )
+
+                # remove VLAN interface
+                # Ex: h1 vconfig rem h1-eth0.100
+                main.log.info( "Remove Vlan interface" )
+                cmd2 = host + " vconfig rem " + intf
+                self.handle.sendline( cmd2 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
+                # assign the host's IP to the original interface
+                # Ex: h1 ifconfig h1-eth0 inet 10.0.0.1
+                main.log.info( "Assign the host IP to the original interface" )
+                original_intf = intf.split(".")[0]
+                cmd3 = host + " ifconfig " + original_intf + " " + " inet " + ipaddr
+                self.handle.sendline( cmd3 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
+                # update Mininet node variables
+                cmd4 = "px %s.defaultIntf().name='%s'" % ( host, original_intf )
+                self.handle.sendline( cmd4 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
+                cmd5 = "px %s.nameToIntf['%s']=%s.defaultIntf()" % ( host, original_intf, host )
+                self.handle.sendline( cmd5 )
+                self.handle.expect( "mininet>" )
+                response = self.handle.before
+                main.log.info( "====> %s ", response )
+
                 return main.TRUE
             except pexpect.TIMEOUT:
                 main.log.error( self.name + ": TIMEOUT exception found" )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/README.md b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/README.md
new file mode 100644
index 0000000..d1c6193
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/README.md
@@ -0,0 +1,21 @@
+This test verifies the segmentrouting application to be working correctly when changing the interface configuration at runtime.
+
+It consists of
+
+1) Configure and install ONOS cluster
+2) Start Mininet and check flow state
+3) Pingall
+4) Change the configuration of a certain interface
+5) Pingall
+
+<h3>Requirements</h3>
+ - Trellis leaf-spine fabric: please visit following URL to set up Trellis leaf-spine fabric
+ https://github.com/opennetworkinglab/routing/tree/master/trellis
+ - ONOS_APPS=drivers,openflow,segmentrouting,fpm,netcfghostprovider
+
+<h3>Topologies</h3>
+- 0x1 single ToR
+- 0x2 dual-homed ToR
+- 2x2 leaf-spine
+- 2x4 leaf-spine with dual-homed ToR and dual links to spines
+- 2x5 topology with spines S0 and S1, and leafs L0, L1, L2, L3, L4.
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.params b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.params
new file mode 100644
index 0000000..69062b3
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.params
@@ -0,0 +1,43 @@
+<PARAMS>
+    <testcases>range(13, 251, 10)</testcases>
+
+    <GRAPH>
+        <nodeCluster>VM</nodeCluster>
+        <builds>20</builds>
+    </GRAPH>
+
+    <SCALE>
+        <size>3</size>
+        <max>3</max>
+    </SCALE>
+
+    <DEPENDENCY>
+        <useCommonConf>False</useCommonConf>
+        <useCommonTopo>True</useCommonTopo>
+        <topology>trellis_fabric.py</topology>
+        <lib>routinglib.py,trellislib.py</lib>
+    </DEPENDENCY>
+
+    <ENV>
+        <cellName>productionCell</cellName>
+        <cellApps>drivers,segmentrouting,openflow,fpm,netcfghostprovider</cellApps>
+    </ENV>
+
+    <GIT>
+        <pull>False</pull>
+        <branch>master</branch>
+    </GIT>
+
+    <CTRL>
+        <port>6653</port>
+    </CTRL>
+
+    <timers>
+        <LinkDiscovery>12</LinkDiscovery>
+        <SwitchDiscovery>12</SwitchDiscovery>
+    </timers>
+
+    <SLEEP>
+        <startup>10</startup>
+    </SLEEP>
+</PARAMS>
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.py b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.py
new file mode 100644
index 0000000..78e25c2
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.py
@@ -0,0 +1,1950 @@
+"""
+Copyright 2017 Open Networking Foundation ( ONF )
+
+Please refer questions to either the onos test mailing list at <onos-test@onosproject.org>,
+the System Testing Plans and Results wiki page at <https://wiki.onosproject.org/x/voMg>,
+or the System Testing Guide page at <https://wiki.onosproject.org/x/WYQg>
+
+    TestON is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 2 of the License, or
+    ( at your option ) any later version.
+
+    TestON is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with TestON.  If not, see <http://www.gnu.org/licenses/>.
+"""
+class SRDynamicConf:
+    def __init__( self ):
+        self.default = ''
+
+    # TODO: Reduce the number of test cases by multiplying different types of parameters in a single test case
+    # (e.g., topology, onosNodes, vlan)
+
+    def CASE11( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of P1 from untagged 10 to tagged [10].
+        A vlan configuration of the host connected to P1 is also changed to tagged 10.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=11,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 10' )
+
+    def CASE12( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of P1 from untagged 10 to tagged [10].
+        A vlan configuration of the host connected to P1 is also changed to tagged 10.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=12,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 10' )
+
+    def CASE13( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of P1 from untagged 10 to tagged [10].
+        A vlan configuration of the host connected to P1 is also changed to tagged 10.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=13,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 10' )
+
+    def CASE14( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of P1 from untagged 10 to tagged [10].
+        A vlan configuration of the host connected to P1 is also changed to tagged 10.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=14,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 10' )
+
+    def CASE21( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to untagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as tagged 20 and native 10.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=21,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 0, 0, 20, 20 ) )
+
+    def CASE22( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to untagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as tagged 20 and native 10.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=22,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 0, 0, 20, 20 ) )
+
+    def CASE23( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to untagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as tagged 20 and native 10.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=23,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 0, 0, 20, 20 ) )
+
+    def CASE24( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to untagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as tagged 20 and native 10.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=24,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 0, 0, 20, 20 ) )
+
+    def CASE31( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from untagged 10 to untagged 110,
+        newly introduced vlan id.
+        Port P3 and P4 are configured as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configurations
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=31,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to untagged 110' )
+
+    def CASE32( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from untagged 10 to untagged 110,
+        newly introduced vlan id.
+        Port P3 and P4 are configured as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configurations
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=32,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to untagged 110' )
+
+    def CASE33( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from untagged 10 to untagged 110,
+        newly introduced vlan id.
+        Port P3 and P4 are configured as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configurations
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=33,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to untagged 110' )
+
+    def CASE34( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from untagged 10 to untagged 110,
+        newly introduced vlan id.
+        Port P3 and P4 are configured as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configurations
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=34,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to untagged 110' )
+
+    def CASE41( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=41,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20' )
+
+    def CASE42( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=42,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20' )
+
+    def CASE43( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=43,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20' )
+
+    def CASE44( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=44,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20' )
+
+    def CASE51( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20 with native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=51,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 with native 10' )
+
+    def CASE52( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20 with native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=52,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 with native 10' )
+
+    def CASE53( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20 with native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=53,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 with native 10' )
+
+    def CASE54( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20 with native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=54,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 with native 10' )
+
+    def CASE61( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120 with native 110.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=61,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 120 with native 110' )
+
+    def CASE62( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120 with native 110.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=62,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 120 with native 110' )
+
+    def CASE63( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120 with native 110.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=63,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 120 with native 110' )
+
+    def CASE64( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120 with native 110.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=64,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 120 with native 110' )
+
+    def CASE71( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 to untagged 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=71,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to untagged 10',
+                                   vlan=( 10, 0, 0, 0 ) )
+
+    def CASE72( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 to untagged 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=72,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to untagged 10',
+                                   vlan=( 10, 0, 0, 0 ) )
+
+    def CASE73( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 to untagged 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=73,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to untagged 10',
+                                   vlan=( 10, 0, 0, 0 ) )
+
+    def CASE74( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 to untagged 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=74,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to untagged 10',
+                                   vlan=( 10, 0, 0, 0 ) )
+
+    def CASE81( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=81,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10' )
+
+    def CASE82( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=82,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10' )
+
+    def CASE83( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=83,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10' )
+
+    def CASE84( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and another port P3 and P4 as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=84,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10' )
+
+    def CASE91( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 10 to
+        tagged 120 with native 110 (both newly introduced VLAN IDs).
+        Port P3 and P4 are configured as untagged 20.
+        Host h1 and h2 are congifured as VLAN 10, h3 and h4 are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=91,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to '
+                                               'tagged 120 with native 110',
+                                   vlan=( 10, 10, 0, 0 ) )
+
+    def CASE92( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 10 to
+        tagged 120 with native 110 (both newly introduced VLAN IDs).
+        Port P3 and P4 are configured as untagged 20.
+        Host h1 and h2 are congifured as VLAN 10, h3 and h4 are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=92,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to '
+                                               'tagged 120 with native 110',
+                                   vlan=( 10, 10, 0, 0 ) )
+
+    def CASE93( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 10 to
+        tagged 120 with native 110 (both newly introduced VLAN IDs).
+        Port P3 and P4 are configured as untagged 20.
+        Host h1 and h2 are congifured as VLAN 10, h3 and h4 are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=93,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to '
+                                               'tagged 120 with native 110',
+                                   vlan=( 10, 10, 0, 0 ) )
+
+    def CASE94( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 10 to
+        tagged 120 with native 110 (both newly introduced VLAN IDs).
+        Port P3 and P4 are configured as untagged 20.
+        Host h1 and h2 are congifured as VLAN 10, h3 and h4 are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes host vlan configuration
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=94,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 to '
+                                               'tagged 120 with native 110',
+                                   vlan=( 10, 10, 0, 0 ) )
+
+    def CASE101( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 and native 20 to untagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=101,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 '
+                                               'and native 20 to untagged 20' )
+
+    def CASE102( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 and native 20 to untagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=102,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 '
+                                               'and native 20 to untagged 20' )
+
+    def CASE103( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 and native 20 to untagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=103,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 '
+                                               'and native 20 to untagged 20' )
+
+    def CASE104( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 10 and native 20 to untagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=104,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 10 '
+                                               'and native 20 to untagged 20' )
+
+    def CASE111( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to tagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=111,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 '
+                                               'and native 10 to tagged 20' )
+
+    def CASE112( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to tagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=112,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 '
+                                               'and native 10 to tagged 20' )
+
+    def CASE113( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to tagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=113,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 '
+                                               'and native 10 to tagged 20' )
+
+    def CASE114( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to tagged 20.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=114,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 '
+                                               'and native 10 to tagged 20' )
+
+    def CASE121( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 20 and native 10
+        to tagged 20 and native 110.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=121,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 20 and native 110' )
+
+    def CASE122( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 20 and native 10
+        to tagged 20 and native 110.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=122,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 20 and native 110' )
+
+    def CASE123( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 20 and native 10
+        to tagged 20 and native 110.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=123,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 20 and native 110' )
+
+    def CASE124( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 and P2 from tagged 20 and native 10
+        to tagged 20 and native 110.
+        Port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=124,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 20 and native 110' )
+
+    def CASE131( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10
+        to tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=131,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 120 and native 10' )
+
+    def CASE132( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10
+        to tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=132,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 120 and native 10' )
+
+    def CASE133( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10
+        to tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=133,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 120 and native 10' )
+
+    def CASE134( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10
+        to tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=134,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 '
+                                               'to tagged 120 and native 10' )
+
+    def CASE141( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=141,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE142( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=142,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE143( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=143,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE144( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=144,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 20',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE151( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=151,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 120',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE152( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=152,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 120',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE153( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=153,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 120',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE154( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as untagged 20.
+        Host h1 is configured as VLAN ID 20 and all other hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=154,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to tagged 120',
+                                   vlan=( 20, 0, 0, 0 ) )
+
+    def CASE161( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1, h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=161,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE162( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1, h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=162,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE163( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1, h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=163,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE164( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from untagged 10 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1, h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=164,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from untagged 10 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE171( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=171,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to tagged 120',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE172( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=172,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to tagged 120',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE173( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=173,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to tagged 120',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE174( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to tagged 120.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=174,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to tagged 120',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE181( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=181,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE182( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=182,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10',
+                                   vlan=(20, 0, 20, 20) )
+
+    def CASE183( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=183,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10',
+                                   vlan=(20, 0, 20, 20) )
+
+    def CASE184( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 to
+        tagged 20 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=184,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 to '
+                                               'tagged 20 and native 10',
+                                   vlan=(20, 0, 20, 20) )
+
+    def CASE191( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        untagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=191,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'untagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE192( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        untagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=192,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'untagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE193( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        untagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=193,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'untagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE194( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        untagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=194,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'untagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE201( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=201,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE202( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=202,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE203( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=203,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE204( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=204,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE211( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20 and native 110.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=211,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20 and native 110',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE212( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20 and native 110.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=212,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20 and native 110',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE213( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20 and native 110.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=213,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20 and native 110',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE214( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 20 and native 110.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=214,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 20 and native 110',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE221( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=221,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 120 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE222( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=222,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 120 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE223( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=223,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 120 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE224( self, main ):
+        """
+        Tests connectivity after changing vlan configuration of port P1 from tagged 20 and native 10 to
+        tagged 120 and native 10.
+        Port P2 is configured as untagged 10 and port P3 and P4 are configured as tagged 20.
+        Host h1 ,h3 and h4 are configured as VLAN ID 20 and h2 is not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=224,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from tagged 20 and native 10 to '
+                                               'tagged 120 and native 10',
+                                   vlan=( 20, 0, 20, 20 ) )
+
+    def CASE231( self, main ):
+        """
+        Tests connectivity after consecutive vlan configuration changes.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x1 single ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        Repeat
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=231,
+                                   topology='0x1',
+                                   onosNodes=3,
+                                   description='Consecutive configuration changes' )
+
+    def CASE232( self, main ):
+        """
+        Tests connectivity after consecutive vlan configuration changes.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 0x2 dual-homed ToR topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        Repeat
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=232,
+                                   topology='0x2',
+                                   onosNodes=3,
+                                   description='Consecutive configuration changes' )
+
+    def CASE233( self, main ):
+        """
+        Tests connectivity after consecutive vlan configuration changes.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        Repeat
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=233,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Consecutive configuration changes' )
+
+    def CASE234( self, main ):
+        """
+        Tests connectivity after consecutive vlan configuration changes.
+        All hosts are not configured.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes interface vlan configuration
+        Pingall
+        Repeat
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=234,
+                                   topology='0x1',
+                                   onosNodes=1,
+                                   description='Consecutive configuration changes' )
+
+    def CASE243( self, main ):
+        """
+        Tests connectivity after changing subnet configuration of port P1 from 10.0.2.254/24 to
+        10.0.6.254/24.
+        IP address and default GW of host h1 are also changed correspondingly.
+
+        Sets up 3 ONOS instances
+        Starts 2x2 leaf-spine topology
+        Pingall
+        Changes host IP configuration
+        Changes interface subnet configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=243,
+                                   topology='2x2',
+                                   onosNodes=3,
+                                   description='Changing port configuration from 10.0.2.254/24 to 10.0.6.254/24' )
+
+    def CASE244( self, main ):
+        """
+        Tests connectivity after changing subnet configuration of port P1 from 10.0.2.254/24 to
+        10.0.6.254/24.
+        IP address and default GW of host h1 are also changed correspondingly.
+
+        Sets up 3 ONOS instances
+        Starts 2x4 dual-homed leaf-spine topology
+        Pingall
+        Changes host IP configuration
+        Changes interface subnet configuration
+        Pingall
+        """
+        from tests.USECASE.SegmentRouting.SRDynamicConf.dependencies.SRDynamicConfTest import SRDynamicConfTest
+        SRDynamicConfTest.runTest( main,
+                                   testIndex=244,
+                                   topology='2x4',
+                                   onosNodes=3,
+                                   description='Changing port configuration from 10.0.2.254/24 to 10.0.6.254/24' )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.topo b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.topo
new file mode 100644
index 0000000..a672a8e
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/SRDynamicConf.topo
@@ -0,0 +1,36 @@
+<TOPOLOGY>
+    <COMPONENT>
+        <ONOScell>
+            <host>localhost</host>  # ONOS "bench" machine
+            <user>sdn</user>
+            <password>rocks</password>
+            <type>OnosClusterDriver</type>
+            <connect_order>1</connect_order>
+            <COMPONENTS>
+                <cluster_name></cluster_name>  # Used as a prefix for cluster components. Defaults to 'ONOS'
+                <diff_clihost></diff_clihost> # if it has different host other than localhost for CLI. True or empty. OC# will be used if True.
+                <karaf_username></karaf_username>
+                <karaf_password></karaf_password>
+                <web_user></web_user>
+                <web_pass></web_pass>
+                <rest_port></rest_port>
+                <prompt></prompt>  # TODO: we technically need a few of these, one per component
+                <onos_home></onos_home>  # defines where onos home is
+                <nodes>3</nodes>  # number of nodes in the cluster
+            </COMPONENTS>
+        </ONOScell>
+
+        <Mininet1>
+            <host>OCN</host>
+            <user>sdn</user>
+            <password>rocks</password>
+            <type>MininetCliDriver</type>
+            <connect_order>2</connect_order>
+            <COMPONENTS>
+                <home>~/mininet/custom/</home>
+                <prompt></prompt>
+            </COMPONENTS>
+        </Mininet1>
+
+    </COMPONENT>
+</TOPOLOGY>
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/__init__.py b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/__init__.py
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/SRDynamicConfTest.py b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/SRDynamicConfTest.py
new file mode 100644
index 0000000..08ad86c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/SRDynamicConfTest.py
@@ -0,0 +1,358 @@
+"""
+Copyright 2017 Open Networking Foundation ( ONF )
+
+Please refer questions to either the onos test mailing list at <onos-test@onosproject.org>,
+the System Testing Plans and Results wiki page at <https://wiki.onosproject.org/x/voMg>,
+or the System Testing Guide page at <https://wiki.onosproject.org/x/WYQg>
+
+    TestON is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 2 of the License, or
+    ( at your option ) any later version.
+
+    TestON is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with TestON.  If not, see <http://www.gnu.org/licenses/>.
+"""
+
+class SRDynamicConfTest:
+    def __init__( self ):
+        self.default = ''
+
+    @staticmethod
+    def runTest( main, testIndex, topology, onosNodes, description, vlan=( 0, 0, 0, 0 ) ):
+        '''
+        Tests connectivity for each test case.
+        Configuration files:
+        - (0x1, 0x2, 2x2, 2x4).json: device configuration, fed to ONOS before configuration change
+        - CASE*.json: interface configuration, fed to ONOS before configuration change
+        - CASE*0.chart: ping chart, used to check connectivity before configuration change.
+                        Shared among same test scenario with different topology.
+        - CASE*0_after.chart: ping chart, used to check connectivity after configuration change.
+                        Shared among same test scenario with different topology.
+                        Only used when ping chart is updated.
+        '''
+        topo = dict()
+        # (number of spine switch, number of leaf switch, dual-homed, description, port number of h1)
+        topo[ '0x1' ] = ( 0, 1, False, 'single ToR', 1 )
+        topo[ '0x2' ] = ( 0, 2, True, 'dual-homed ToR', 2 )
+        topo[ '2x2' ] = ( 2, 2, False, '2x2 leaf-spine topology', 3 )
+        topo[ '2x4' ] = ( 2, 4, True, '2x4 dual-homed leaf-spine topology', 6 )
+        fanout = 4
+        switchNames = {}
+        switchNames[ '2x2' ] = [ "leaf1", "leaf2", "spine101", "spine102" ]
+
+        TAG = 'CASE%d' % testIndex
+        skipPackage = False
+        init = False
+        dualHomed = topo[ topology ][ 2 ]
+        portNum = topo[ topology ][ 4 ]
+        defaultIntf = 'bond0' if dualHomed else 'eth0'
+
+        from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+        if not hasattr( main, 'apps' ):
+            init = True
+            run.initTest( main )
+        # Skip onos packaging if the clusrer size stays the same
+        if not init and onosNodes == main.Cluster.numCtrls:
+            skipPackage = True
+
+        main.case( '%s, with %s and %d ONOS instance%s' %
+                   ( description, topo[ topology ][ 3 ], onosNodes, 's' if onosNodes > 1 else '' ) )
+        main.cfgName = topology
+        main.Cluster.setRunningNode( onosNodes )
+        run.installOnos( main, skipPackage=skipPackage, cliSleep=5 )
+
+        # Provide common configuration
+        # TODO: Generate json and chart dynamically, according to topologies and scenarios
+        run.loadJson( main )
+        run.loadChart( main )
+
+        # Provide topology-specific interface configuration
+        import json
+        try:
+            with open( "%s%s%s.json" % (main.configPath, main.forJson, TAG) ) as cfg:
+                main.Cluster.active( 0 ).REST.setNetCfg( json.load( cfg ) )
+        except IOError:
+            # Load default interface configuration
+            with open( "%s%s%s_ports.json" % (main.configPath, main.forJson, topology) ) as cfg:
+                main.Cluster.active( 0 ).REST.setNetCfg( json.load( cfg ) )
+
+        try:
+            with open( "%s%sCASE%d.chart" % (main.configPath, main.forChart, testIndex / 10 * 10) ) as chart:
+                main.pingChart = json.load( chart )
+        except IOError:
+            # Load default chart
+            with open( "%s%sdefault.chart" % (main.configPath, main.forChart) ) as chart:
+                main.pingChart = json.load( chart )
+
+        # Set up topology
+        if hasattr( main, 'Mininet1' ):
+            # Run the test with mininet topology
+            mininet_args = ' --spine=%d --leaf=%d --fanout=%d' \
+                           % ( topo[ topology ][ 0 ], topo[ topology ][ 1 ], fanout )
+            if len( vlan ) > 0 :
+                mininet_args += ' --vlan=%s' % ( ','.join( [ '%d' % vlanId for vlanId in vlan ] ) )
+                if topo[ topology ][ 0 ] > 0:
+                    mininet_args += ',0,0,0,0'
+            if dualHomed:
+                mininet_args += ' --dual-homed'
+
+            run.startMininet( main, 'trellis_fabric.py', args=mininet_args )
+        else:
+            # Run the test with physical devices
+            run.connectToPhysicalNetwork( main, switchNames[ topology ] )
+
+        # minFlowCountPerLeaf = 13 +  [# of ports] * 5 + [# of hosts] * 2 + [# of vlan ids]
+        minFlowCountPerLeaf = 13 + ( fanout + topo[ topology ][ 0 ]) * 5 + fanout * 2 + len( set( vlan ) )
+        run.checkFlows( main, minFlowCount=minFlowCountPerLeaf * topo[ topology ][ 1 ], sleep=5, dumpflows=False )
+        # Check connectivity before changing interface configuration
+        run.pingAll( main, '%s_Before' % TAG, retryAttempts=2 )
+
+        leaf_dpid = [ "of:%016d" % ( ls + 1 ) for ls in range( topo[ topology ][ 1 ] ) ]
+        for dpid in leaf_dpid:
+            run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+
+        # Testcase-specific interface configuration change
+        if testIndex / 10 == 1:
+            # CASE11-14
+            if hasattr( main, 'Mininet1' ):
+                # Assign vlan tag 10 to host h1
+                main.Mininet1.assignVLAN( 'h1', 'h1-%s' % defaultIntf, '10' )
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 10, ] )
+            else:
+                # TODO: update physical device configuration, same for all test cases
+                pass
+        elif testIndex / 10 == 2:
+            # CASE21-24
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=20 )
+        elif testIndex / 10 == 3:
+            # CASE31-34
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=110 )
+                # Update port configuration of port 2
+                SRDynamicConfTest.updateIntfCfg( main, portNum + 1, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=110 )
+        elif testIndex / 10 == 4:
+            # CASE41-44
+            if hasattr( main, 'Mininet1' ):
+                # Assign vlan tag 20 to host h1
+                main.Mininet1.assignVLAN( 'h1', 'h1-%s' % defaultIntf, '20')
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ] )
+        elif testIndex / 10 == 5:
+            # CASE51-54
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=10 )
+        elif testIndex / 10 == 6:
+            # CASE61-64
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ], native=110 )
+                # Update port configuration of port 2
+                SRDynamicConfTest.updateIntfCfg( main, portNum + 1, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ], native=110 )
+        elif testIndex / 10 == 7:
+            # CASE71-74
+            if hasattr( main, 'Mininet1' ):
+                # Update host configuration of h1
+                main.Mininet1.removeVLAN( 'h1', 'h1-%s.10' % defaultIntf )
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=10 )
+        elif testIndex / 10 == 8:
+            # CASE81-84
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration of port 1
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=10 )
+        elif testIndex / 10 == 9:
+            # CASE91-94
+            if hasattr( main, 'Mininet1' ):
+                # Update host configuration
+                main.Mininet1.removeVLAN( 'h1', 'h1-%s.10' % defaultIntf )
+                main.Mininet1.removeVLAN( 'h2', 'h2-%s.10' % defaultIntf )
+
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ], native=110 )
+                SRDynamicConfTest.updateIntfCfg( main, portNum + 1, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ], native=110 )
+        elif testIndex / 10 == 10:
+            # CASE101-104
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=20 )
+        elif testIndex / 10 == 11:
+            # CASE111-114
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ] )
+        elif testIndex / 10 == 12:
+            # CASE121-124
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=110 )
+                SRDynamicConfTest.updateIntfCfg( main, portNum + 1, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=110 )
+        elif testIndex / 10 == 13:
+            # CASE131-134
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ], native=10 )
+        elif testIndex / 10 == 14:
+            # CASE141-144
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ] )
+        elif testIndex / 10 == 15:
+            # CASE151-154
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ] )
+        elif testIndex / 10 == 16:
+            # CASE161-164
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=10 )
+        elif testIndex / 10 == 17:
+            # CASE171-174
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120, ] )
+        elif testIndex / 10 == 18:
+            # CASE181-184
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ], native=10 )
+        elif testIndex / 10 == 19:
+            # CASE191-194
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=20 )
+        elif testIndex / 10 == 20:
+            # CASE201-204
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20 ] )
+        elif testIndex / 10 == 21:
+            # CASE211-214
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20 ], native=110 )
+        elif testIndex / 10 == 22:
+            # CASE221-224
+            if hasattr( main, 'Mininet1' ):
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 120 ], native=10 )
+        elif testIndex / 10 == 23:
+            # CASE231-234
+            if hasattr( main, "Mininet1" ):
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 10, ] )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                main.pingChart[ 'leaf1' ][ 'expect' ] = False
+                run.pingAll( main, '%s_1' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged=50 )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                run.pingAll( main, '%s_2' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ] )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                run.pingAll( main, '%s_3' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 40, ], native=10 )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                main.pingChart[ 'leaf1' ][ 'expect' ] = True
+                run.pingAll( main, '%s_4' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], tagged=[ 20, ] )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                main.pingChart[ 'leaf1' ][ 'expect' ] = False
+                run.pingAll( main, '%s_5' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged= 20 )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                run.pingAll( main, '%s_6' % TAG, retryAttempts=2 )
+
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.2.254/24', ], untagged= 10 )
+                for dpid in leaf_dpid:
+                    run.checkFlowsByDpid( main, dpid, minFlowCountPerLeaf, sleep=5 )
+                main.pingChart[ 'leaf1' ][ 'expect' ] = True
+        elif testIndex / 10 == 24:
+            # CASE243-244
+            # Only for 2x2 and 2x4 topology, to test reachability from other leaf
+            if hasattr( main, "Mininet1" ):
+                # Update host IP and default GW
+                main.Mininet1.changeIP( 'h1', 'h1-%s' % defaultIntf, '10.0.6.1', '255.255.255.0' )
+                main.Mininet1.changeDefaultGateway( 'h1', '10.0.6.254' )
+                # Update port configuration
+                SRDynamicConfTest.updateIntfCfg( main, portNum, dualHomed,
+                                                 [ '10.0.6.254/24', ], untagged=60 )
+
+        # Update ping chart in case it is changed
+        try:
+            with open( "%s%sCASE%d_after.chart" % (main.configPath, main.forChart, testIndex / 10 * 10 ) ) as chart:
+                main.pingChart = json.load(chart)
+        except IOError:
+            main.log.debug( "Ping chart is not changed" )
+
+        # Check connectivity after changing interface configuration
+        run.checkFlows( main, minFlowCount=minFlowCountPerLeaf * topo[ topology ][ 1 ], sleep=5, dumpflows=False )
+        run.pingAll( main, '%s_After' % TAG, retryAttempts=2 )
+
+        if hasattr( main, 'Mininet1' ):
+            run.cleanup( main )
+        else:
+            # TODO: disconnect TestON from the physical network
+            pass
+
+    @staticmethod
+    def updateIntfCfg( main, portNum, dualHomed, ips=[], untagged=0, tagged=[], native=0 ):
+        from tests.USECASE.SegmentRouting.dependencies.Testcaselib import Testcaselib as run
+        run.updateIntfCfg( main, "of:0000000000000001/%d" % portNum,
+                           ips=ips, untagged=untagged, tagged=tagged, native=native )
+        if dualHomed:
+            run.updateIntfCfg( main, "of:0000000000000002/%d" % portNum,
+                               ips=ips, untagged=untagged, tagged=tagged, native=native )
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/__init__.py b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/__init__.py
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE10.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE10.chart
new file mode 100644
index 0000000..c1b3cb6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE10.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE100.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE100.chart
new file mode 100644
index 0000000..c1b3cb6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE100.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE110_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE110_after.chart
new file mode 100644
index 0000000..565485a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE110_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2", "h3"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140.chart
new file mode 100644
index 0000000..90503f1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140_after.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE140_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE150.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE150.chart
new file mode 100644
index 0000000..90503f1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE150.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160.chart
new file mode 100644
index 0000000..90503f1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160_after.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE160_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170_after.chart
new file mode 100644
index 0000000..565485a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE170_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2", "h3"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE180.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE180.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE180.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190_after.chart
new file mode 100644
index 0000000..565485a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE190_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2", "h3"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE200.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE200.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE200.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE20_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE20_after.chart
new file mode 100644
index 0000000..2b03a37
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE20_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]},
+  "leaf1-fail": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE210.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE210.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE210.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220.chart
new file mode 100644
index 0000000..a624006
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220_after.chart
new file mode 100644
index 0000000..565485a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE220_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2", "h3"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE240.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE240.chart
new file mode 100644
index 0000000..04eafac
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE240.chart
@@ -0,0 +1,4 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2", "h5"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE40_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE40_after.chart
new file mode 100644
index 0000000..2b03a37
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE40_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h3", "h4"]},
+  "leaf1-fail": {"expect": "False",
+    "hosts":["h1", "h2"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80.chart
new file mode 100644
index 0000000..90503f1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "False",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80_after.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80_after.chart
new file mode 100644
index 0000000..cfb2570
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/CASE80_after.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/default.chart b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/default.chart
new file mode 100644
index 0000000..cfb2570
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/chart/default.chart
@@ -0,0 +1,6 @@
+{
+  "leaf1": {"expect": "True",
+    "hosts":["h1", "h2"]},
+  "leaf1-20": {"expect": "True",
+    "hosts":["h3", "h4"]}
+}
\ No newline at end of file
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1.json
new file mode 100644
index 0000000..0f2aef7
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1.json
@@ -0,0 +1,16 @@
+{
+   "devices" : {
+        "of:0000000000000001" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.1",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1_ports.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1_ports.json
new file mode 100644
index 0000000..84a7c08
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x1_ports.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2.json
new file mode 100644
index 0000000..e8cc888
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2.json
@@ -0,0 +1,32 @@
+{
+    "devices" : {
+        "of:0000000000000001" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.1",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000002",
+                "pairLocalPort" : 1,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000002" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.2",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000001",
+                "pairLocalPort" : 1,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2_ports.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2_ports.json
new file mode 100644
index 0000000..845230e
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/0x2_ports.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2.json
new file mode 100644
index 0000000..358d35a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2.json
@@ -0,0 +1,86 @@
+{
+    "ports" : {
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        }
+    },
+    "devices" : {
+        "of:0000000000000001" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.1",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000002" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 2,
+                "ipv4Loopback" : "192.168.0.2",
+                "routerMac" : "00:00:00:00:00:02",
+                "isEdgeRouter" : true,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000101" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 101,
+                "ipv4Loopback" : "192.168.0.101",
+                "routerMac" : "00:00:00:00:01:01",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000102" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 102,
+                "ipv4Loopback" : "192.168.0.102",
+                "routerMac" : "00:00:00:00:01:02",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2_ports.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2_ports.json
new file mode 100644
index 0000000..af5cc29
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x2_ports.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4.json
new file mode 100644
index 0000000..7d65db7
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4.json
@@ -0,0 +1,150 @@
+{
+    "ports" : {
+        "of:0000000000000003/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000003/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000003/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000003/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000004/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000004/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000004/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        },
+        "of:0000000000000004/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.3.254/24" ],
+                    "vlan-untagged": 30
+                }
+            ]
+        }
+    },
+    "devices" : {
+        "of:0000000000000001" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.1",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000002",
+                "pairLocalPort" : 5,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000002" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 1,
+                "ipv4Loopback" : "192.168.0.2",
+                "routerMac" : "00:00:00:00:00:01",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000001",
+                "pairLocalPort" : 5,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000003" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 2,
+                "ipv4Loopback" : "192.168.0.3",
+                "routerMac" : "00:00:00:00:00:02",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000004",
+                "pairLocalPort" : 5,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000004" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 2,
+                "ipv4Loopback" : "192.168.0.4",
+                "routerMac" : "00:00:00:00:00:02",
+                "isEdgeRouter" : true,
+                "pairDeviceId" : "of:0000000000000003",
+                "pairLocalPort" : 5,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000101" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 101,
+                "ipv4Loopback" : "192.168.0.101",
+                "routerMac" : "00:00:00:00:01:01",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        },
+        "of:0000000000000102" : {
+            "segmentrouting" : {
+                "ipv4NodeSid" : 102,
+                "ipv4Loopback" : "192.168.0.102",
+                "routerMac" : "00:00:00:00:01:02",
+                "isEdgeRouter" : false,
+                "adjacencySids" : []
+            },
+            "basic" : {
+                "driver" : "ofdpa-ovs"
+            }
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4_ports.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4_ports.json
new file mode 100644
index 0000000..7d1eb0d
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/2x4_ports.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE101.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE101.json
new file mode 100644
index 0000000..3b6fe09
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE101.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE102.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE102.json
new file mode 100644
index 0000000..8dbc07a
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE102.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE103.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE103.json
new file mode 100644
index 0000000..addd2dc
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE103.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE104.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE104.json
new file mode 100644
index 0000000..f111838
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE104.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ],
+                    "vlan-native": 20
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE11.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE11.json
new file mode 100644
index 0000000..52760d1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE11.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE111.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE111.json
new file mode 100644
index 0000000..238174c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE111.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE112.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE112.json
new file mode 100644
index 0000000..4bd932c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE112.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE113.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE113.json
new file mode 100644
index 0000000..e9b69e1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE113.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE114.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE114.json
new file mode 100644
index 0000000..f2cbc24
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE114.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE12.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE12.json
new file mode 100644
index 0000000..0455d62
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE12.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE121.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE121.json
new file mode 100644
index 0000000..238174c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE121.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE122.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE122.json
new file mode 100644
index 0000000..e592a77
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE122.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE123.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE123.json
new file mode 100644
index 0000000..4ae8150
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE123.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE124.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE124.json
new file mode 100644
index 0000000..42b47c9
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE124.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE13.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE13.json
new file mode 100644
index 0000000..fd61928
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE13.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE131.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE131.json
new file mode 100644
index 0000000..1c44c52
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE131.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE132.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE132.json
new file mode 100644
index 0000000..4bd932c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE132.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE133.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE133.json
new file mode 100644
index 0000000..e9b69e1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE133.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE134.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE134.json
new file mode 100644
index 0000000..f2cbc24
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE134.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE14.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE14.json
new file mode 100644
index 0000000..e6ad09d
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE14.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE161.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE161.json
new file mode 100644
index 0000000..f797c84
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE161.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE162.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE162.json
new file mode 100644
index 0000000..81d8251
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE162.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE163.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE163.json
new file mode 100644
index 0000000..01c9290
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE163.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE164.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE164.json
new file mode 100644
index 0000000..a6d29c3
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE164.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE171.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE171.json
new file mode 100644
index 0000000..3dfa7ee
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE171.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE172.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE172.json
new file mode 100644
index 0000000..ef138fa
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE172.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE173.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE173.json
new file mode 100644
index 0000000..129ac73
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE173.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE174.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE174.json
new file mode 100644
index 0000000..3f52458
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE174.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE181.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE181.json
new file mode 100644
index 0000000..3dfa7ee
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE181.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE182.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE182.json
new file mode 100644
index 0000000..ef138fa
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE182.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE183.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE183.json
new file mode 100644
index 0000000..129ac73
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE183.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE184.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE184.json
new file mode 100644
index 0000000..3f52458
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE184.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE191.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE191.json
new file mode 100644
index 0000000..a2f80de
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE191.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE192.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE192.json
new file mode 100644
index 0000000..54a6ea6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE192.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE193.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE193.json
new file mode 100644
index 0000000..3075a74
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE193.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE194.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE194.json
new file mode 100644
index 0000000..235ce57
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE194.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE201.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE201.json
new file mode 100644
index 0000000..a2f80de
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE201.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE202.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE202.json
new file mode 100644
index 0000000..54a6ea6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE202.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE203.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE203.json
new file mode 100644
index 0000000..3075a74
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE203.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE204.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE204.json
new file mode 100644
index 0000000..235ce57
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE204.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE21.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE21.json
new file mode 100644
index 0000000..52760d1
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE21.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE211.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE211.json
new file mode 100644
index 0000000..a2f80de
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE211.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE212.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE212.json
new file mode 100644
index 0000000..54a6ea6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE212.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE213.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE213.json
new file mode 100644
index 0000000..3075a74
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE213.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE214.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE214.json
new file mode 100644
index 0000000..235ce57
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE214.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE22.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE22.json
new file mode 100644
index 0000000..0455d62
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE22.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE221.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE221.json
new file mode 100644
index 0000000..a2f80de
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE221.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE222.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE222.json
new file mode 100644
index 0000000..54a6ea6
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE222.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE223.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE223.json
new file mode 100644
index 0000000..3075a74
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE223.json
@@ -0,0 +1,37 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE224.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE224.json
new file mode 100644
index 0000000..235ce57
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE224.json
@@ -0,0 +1,70 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE23.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE23.json
new file mode 100644
index 0000000..fd61928
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE23.json
@@ -0,0 +1,38 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE24.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE24.json
new file mode 100644
index 0000000..e6ad09d
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE24.json
@@ -0,0 +1,72 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ],
+                    "vlan-native": 10
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE71.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE71.json
new file mode 100644
index 0000000..3612a43
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE71.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE72.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE72.json
new file mode 100644
index 0000000..77ffa72
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE72.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE73.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE73.json
new file mode 100644
index 0000000..5479e30
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE73.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE74.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE74.json
new file mode 100644
index 0000000..19e8766
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE74.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE81.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE81.json
new file mode 100644
index 0000000..99d5fb4
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE81.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE82.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE82.json
new file mode 100644
index 0000000..53c9842
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE82.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE83.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE83.json
new file mode 100644
index 0000000..171e702
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE83.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE84.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE84.json
new file mode 100644
index 0000000..f94869b
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE84.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 20 ]
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 10
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE91.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE91.json
new file mode 100644
index 0000000..73a1abb
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE91.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/1" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE92.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE92.json
new file mode 100644
index 0000000..5f4155c
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE92.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/2" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE93.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE93.json
new file mode 100644
index 0000000..df66050
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE93.json
@@ -0,0 +1,36 @@
+{
+    "ports" : {
+        "of:0000000000000001/3" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/4" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/5" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE94.json b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE94.json
new file mode 100644
index 0000000..b1a50ef
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/SRDynamicConf/dependencies/json/CASE94.json
@@ -0,0 +1,68 @@
+{
+    "ports" : {
+        "of:0000000000000001/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000001/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000001/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/6" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/7" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-tagged": [ 10 ]
+                }
+            ]
+        },
+        "of:0000000000000002/8" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        },
+        "of:0000000000000002/9" : {
+            "interfaces" : [
+                {
+                    "ips" : [ "10.0.2.254/24" ],
+                    "vlan-untagged": 20
+                }
+            ]
+        }
+    }
+}
diff --git a/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
index a063761..d8c537e 100644
--- a/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
+++ b/TestON/tests/USECASE/SegmentRouting/dependencies/Testcaselib.py
@@ -372,11 +372,12 @@
         return
 
     @staticmethod
-    def pingAll( main, tag="", dumpflows=True, acceptableFailed=0, basedOnIp=False ):
+    def pingAll( main, tag="", dumpflows=True, acceptableFailed=0, basedOnIp=False, sleep=10, retryAttempts=1 ):
         '''
         Verify connectivity between hosts according to the ping chart
         acceptableFailed: max number of acceptable failed pings.
         basedOnIp: if True, run ping or ping6 based on suffix of host names
+        retryAttempts: the number of retry ping. Only works for IPv4 hosts.
         '''
         main.log.report( "Check host connectivity" )
         main.log.debug( "Ping chart: %s" % main.pingChart )
@@ -417,7 +418,11 @@
                 main.step( "Verify full connectivity for %s with tag %s" % ( str( hosts ), tag ) )
                 if basedOnIp:
                     if ("v4" in hosts[0]):
-                        pa = main.Network.pingallHosts( hosts )
+                        pa = utilities.retry( main.Network.pingallHosts,
+                                              main.FALSE if expect else main.TRUE,
+                                              args=(hosts,),
+                                              attempts=retryAttempts,
+                                              sleep=sleep )
                         utilities.assert_equals( expect=expect, actual=pa,
                                                  onpass="IPv4 connectivity successfully tested",
                                                  onfail="IPv4 connectivity failed" )
@@ -796,3 +801,30 @@
                                  onpass="Verify ONOS host IP succeded",
                                  onfail="Verify ONOS host IP failed" )
 
+    @staticmethod
+    def updateIntfCfg( main, connectPoint, ips=[], untagged=0, tagged=[], native=0 ):
+        """
+        Description:
+            Updates interface configuration in ONOS, with given IP and vlan parameters
+        Required:
+            * connectPoint: connect point to update configuration
+        Optional:
+            * ips: list of IP addresses, combined with '/xx' subnet representation,
+                   corresponding to 'ips' field in the configuration
+            * untagged: vlan ID as an integer, corresponding to 'vlan-untagged' field in the configuration
+            * tagged: integer list of vlan IDs, corresponding to 'vlan-tagged' field in the configuration
+            * native: vlan ID as an integer, corresponding to 'vlan-native' field in the configuration
+        """
+        cfg = dict()
+        cfg[ "ports" ] = dict()
+        cfg[ "ports" ][ connectPoint ] = dict()
+        cfg[ "ports" ][ connectPoint ][ "interfaces" ] = [ dict() ]
+        cfg[ "ports" ][ connectPoint ][ "interfaces" ][ 0 ][ "ips" ] = ips
+        if untagged > 0:
+            cfg[ "ports" ][ connectPoint ][ "interfaces" ][ 0 ][ "vlan-untagged" ] = untagged
+        else:
+            cfg[ "ports" ][ connectPoint ][ "interfaces" ][ 0 ][ "vlan-tagged" ] = tagged
+            if native > 0:
+                cfg[ "ports" ][ connectPoint ][ "interfaces" ][ 0 ][ "vlan-native" ] = native
+
+        main.Cluster.active( 0 ).REST.setNetCfg( json.loads( json.dumps( cfg ) ) )
