]> git.proxmox.com Git - mirror_frr.git/blobdiff - tests/topotests/bgp_lu_topo1/test_bgp_lu.py
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / tests / topotests / bgp_lu_topo1 / test_bgp_lu.py
index d1745674f008fdc1e70862c44c070bd2e6485593..7d59762410eff3c748802ce82521c413f71adb1c 100644 (file)
@@ -1,4 +1,5 @@
 #!/usr/bin/env python
+# SPDX-License-Identifier: ISC
 
 #
 # test_bgp_lu.py
@@ -6,20 +7,6 @@
 #
 # Copyright (c) 2020 by Volta Networks
 #
-# Permission to use, copy, modify, and/or distribute this software
-# for any purpose with or without fee is hereby granted, provided
-# that the above copyright notice and this permission notice appear
-# in all copies.
-#
-# THE SOFTWARE IS PROVIDED "AS IS" AND NETDEF DISCLAIMS ALL WARRANTIES
-# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NETDEF BE LIABLE FOR
-# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
-# DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
-# WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
-# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
-# OF THIS SOFTWARE.
-#
 
 """
 test_bgp_lu.py: Test BGP LU label allocation
@@ -29,7 +16,6 @@ import os
 import sys
 import json
 from functools import partial
-from time import sleep
 import pytest
 
 # Save the Current Working Directory to find configuration files.
@@ -40,10 +26,8 @@ sys.path.append(os.path.join(CWD, "../"))
 # Import topogen and topotest helpers
 from lib import topotest
 from lib.topogen import Topogen, TopoRouter, get_topogen
-from lib.topolog import logger
 
 # Required to instantiate the topology builder class.
-from mininet.topo import Topo
 
 
 pytestmark = [pytest.mark.bgpd]
@@ -62,44 +46,40 @@ pytestmark = [pytest.mark.bgpd]
 # +-----+                +-----+                 +-----+
 
 
-class TemplateTopo(Topo):
-    "Test topology builder"
-
-    def build(self, *_args, **_opts):
-        "Build function"
-        tgen = get_topogen(self)
+def build_topo(tgen):
+    "Build function"
 
-        # This function only purpose is to define allocation and relationship
-        # between routers, switches and hosts.
-        #
-        #
-        # Create routers
-        tgen.add_router("R1")
-        tgen.add_router("R2")
-        tgen.add_router("R3")
+    # This function only purpose is to define allocation and relationship
+    # between routers, switches and hosts.
+    #
+    #
+    # Create routers
+    tgen.add_router("R1")
+    tgen.add_router("R2")
+    tgen.add_router("R3")
 
-        # R1-R2
-        switch = tgen.add_switch("s1")
-        switch.add_link(tgen.gears["R1"])
-        switch.add_link(tgen.gears["R2"])
+    # R1-R2
+    switch = tgen.add_switch("s1")
+    switch.add_link(tgen.gears["R1"])
+    switch.add_link(tgen.gears["R2"])
 
-        # R2-R3
-        switch = tgen.add_switch("s2")
-        switch.add_link(tgen.gears["R2"])
-        switch.add_link(tgen.gears["R3"])
+    # R2-R3
+    switch = tgen.add_switch("s2")
+    switch.add_link(tgen.gears["R2"])
+    switch.add_link(tgen.gears["R3"])
 
 
 def setup_module(mod):
     "Sets up the pytest environment"
     # This function initiates the topology build with Topogen...
-    tgen = Topogen(TemplateTopo, mod.__name__)
+    tgen = Topogen(build_topo, mod.__name__)
     # ... and here it calls Mininet initialization functions.
     tgen.start_topology()
 
     # This is a sample of configuration loading.
     router_list = tgen.routers()
 
-    # For all registred routers, load the zebra configuration file
+    # For all registered routers, load the zebra configuration file
     for rname, router in router_list.items():
         router.load_config(
             TopoRouter.RD_ZEBRA, os.path.join(CWD, "{}/zebra.conf".format(rname))