]> git.puffer.fish Git - matthieu/frr.git/commitdiff
tests: add regression test for issue $13920
authorChristian Hopps <chopps@labn.net>
Fri, 14 Jul 2023 23:29:57 +0000 (19:29 -0400)
committerChristian Hopps <chopps@labn.net>
Sun, 16 Jul 2023 17:18:37 +0000 (13:18 -0400)
Signed-off-by: Christian Hopps <chopps@labn.net>
tests/topotests/mgmt_config/r1/frr.conf [new file with mode: 0644]
tests/topotests/mgmt_config/test_regression.py [new file with mode: 0644]

diff --git a/tests/topotests/mgmt_config/r1/frr.conf b/tests/topotests/mgmt_config/r1/frr.conf
new file mode 100644 (file)
index 0000000..076715c
--- /dev/null
@@ -0,0 +1,15 @@
+debug northbound notifications
+! debug northbound libyang
+debug northbound events
+debug northbound callbacks
+debug mgmt backend datastore frontend transaction
+debug mgmt client backend
+debug mgmt client frontend
+
+log timestamp precision 6
+log file frr.log debug
+
+interface r1-eth0
+  ip address 101.0.0.1/24
+  ipv6 address 2101::1/64
+exit
\ No newline at end of file
diff --git a/tests/topotests/mgmt_config/test_regression.py b/tests/topotests/mgmt_config/test_regression.py
new file mode 100644 (file)
index 0000000..00c3e01
--- /dev/null
@@ -0,0 +1,53 @@
+# -*- coding: utf-8 eval: (blacken-mode 1) -*-
+# SPDX-License-Identifier: ISC
+#
+# July 13 2023, Christian Hopps <chopps@labn.net>
+#
+# Copyright (c) 2023, LabN Consulting, L.L.C.
+#
+"""
+Test mgmtd regressions
+
+"""
+import pytest
+from lib.topogen import Topogen
+
+pytestmark = [pytest.mark.staticd]
+
+
+@pytest.fixture(scope="module")
+def tgen(request):
+    "Setup/Teardown the environment and provide tgen argument to tests"
+
+    topodef = {"s1": ("r1",)}
+    tgen = Topogen(topodef, request.module.__name__)
+    tgen.start_topology()
+    tgen.gears["r1"].load_frr_config("frr.conf")
+    tgen.start_router()
+    yield tgen
+    tgen.stop_topology()
+
+
+def test_regression_issue_13920(tgen):
+    """Issue #13920
+
+    ubuntu2204# conf t
+    ubuntu2204(config)# ip route 3.2.4.0/24 6.5.5.11 loop3
+    ubuntu2204(config)# nexthop-group nh2
+    ubuntu2204(config-nh-group)# nexthop 6.5.5.12
+    ubuntu2204(config-nh-group)# exi
+    ubuntu2204(config)# ip route 3.22.4.0/24 6.5.5.12
+    crash
+    """
+
+    r1 = tgen.gears["r1"]
+    r1.vtysh_multicmd(
+        """
+    conf t
+    nexthop-group nh2
+    exit
+    ip route 3.22.4.0/24 6.5.5.12
+    """
+    )
+    output = r1.net.checkRouterCores()
+    assert not output.strip()