]> git.proxmox.com Git - mirror_frr.git/commitdiff
tests: add topotest to cover SVD flood entry
authorStephen Worley <sworley@nvidia.com>
Thu, 9 Feb 2023 20:30:32 +0000 (15:30 -0500)
committerStephen Worley <sworley@nvidia.com>
Mon, 13 Feb 2023 23:12:05 +0000 (18:12 -0500)
Add a topotest to cover making sure SVD flood entries
are installed with SVD.

Signed-off-by: Stephen Worley <sworley@nvidia.com>
tests/topotests/bgp_evpn_vxlan_svd_topo1/test_bgp_evpn_vxlan_svd.py

index cef8260dafe814e5452c08b4f67a7a15d9516ecd..ae0b67ac655e649aac2ecc1239b39119d3dcdacf 100755 (executable)
@@ -204,6 +204,13 @@ def check_vni_macs_present(tgen, router, vni, maclist):
             )
     return None
 
+def check_flood_entry_present(pe, vni, vtep):
+    output = pe.run("bridge fdb get 00:00:00:00:00:00 dev vxlan0 vni {} self".format(vni))
+
+    if str(vtep) not in output:
+        return output
+
+    return None
 
 def test_pe1_converge_evpn():
     "Wait for protocol convergence"
@@ -233,6 +240,11 @@ def test_pe1_converge_evpn():
         logger.warning("%s", result)
         assert None, '"{}" missing expected MACs'.format(pe1.name)
 
+    vtep = "10.30.30.30"
+    test_func = partial(check_flood_entry_present, pe1, 101, vtep)
+    _, result = topotest.run_and_expect(test_func, None, count=30, wait=1)
+    assertmsg = '"{}" Flood FDB Entry for VTEP {} not found'.format(pe1.name, vtep)
+    assert result is None, assertmsg
 
 def test_pe2_converge_evpn():
     "Wait for protocol convergence"
@@ -263,6 +275,11 @@ def test_pe2_converge_evpn():
         logger.warning("%s", result)
         assert None, '"{}" missing expected MACs'.format(pe2.name)
 
+    vtep = "10.10.10.10"
+    test_func = partial(check_flood_entry_present, pe2, 101, vtep)
+    _, result = topotest.run_and_expect(test_func, None, count=30, wait=1)
+    assertmsg = '"{}" Flood FDB Entry for VTEP {} not found'.format(pe2.name, vtep)
+    assert result is None, assertmsg
 
 def mac_learn_test(host, local):
     "check the host MAC gets learned by the VNI"