summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/topotests/bgp_aigp/r4/bgpd.conf7
-rw-r--r--tests/topotests/bgp_aigp/r6/zebra.conf1
-rw-r--r--tests/topotests/bgp_aigp/test_bgp_aigp.py5
3 files changed, 13 insertions, 0 deletions
diff --git a/tests/topotests/bgp_aigp/r4/bgpd.conf b/tests/topotests/bgp_aigp/r4/bgpd.conf
index e12c45e0bb..2cdf84a1b3 100644
--- a/tests/topotests/bgp_aigp/r4/bgpd.conf
+++ b/tests/topotests/bgp_aigp/r4/bgpd.conf
@@ -13,9 +13,16 @@ router bgp 65001
neighbor 10.0.0.6 update-source lo
address-family ipv4
redistribute connected route-map connected-to-bgp
+ redistribute ospf route-map ospf-to-bgp
neighbor 192.168.24.2 route-map set-nexthop out
exit-address-family
!
+ip prefix-list p66 seq 5 permit 10.0.6.6/32
+!
+route-map ospf-to-bgp permit 10
+ match ip address prefix-list p66
+ set aigp igp-metric
+!
! Two OSPF domains should be isolated - otherwise the connected routes
! on r4 would be advertised to r3 (via r4 -> r6 -> r5 -> r3), and can
! mess up bgp bestpath calculation (igp metrics for the BGP nexthops).
diff --git a/tests/topotests/bgp_aigp/r6/zebra.conf b/tests/topotests/bgp_aigp/r6/zebra.conf
index f8ca5f8b82..b6456cacc5 100644
--- a/tests/topotests/bgp_aigp/r6/zebra.conf
+++ b/tests/topotests/bgp_aigp/r6/zebra.conf
@@ -1,6 +1,7 @@
!
interface lo
ip address 10.0.0.6/32
+ ip address 10.0.6.6/32
!
interface r6-eth0
ip address 192.168.46.6/24
diff --git a/tests/topotests/bgp_aigp/test_bgp_aigp.py b/tests/topotests/bgp_aigp/test_bgp_aigp.py
index 5f253d2ef0..f937f851a6 100644
--- a/tests/topotests/bgp_aigp/test_bgp_aigp.py
+++ b/tests/topotests/bgp_aigp/test_bgp_aigp.py
@@ -248,6 +248,11 @@ def test_bgp_aigp():
"""
)
+ # r4, 10.0.6.6/32 with aigp-metric 20
+ test_func = functools.partial(_bgp_check_aigp_metric, r4, "10.0.6.6/32", 20)
+ _, result = topotest.run_and_expect(test_func, None, count=60, wait=1)
+ assert result is None, "aigp-metric for 10.0.6.6/32 is not 20"
+
# r4, 10.0.0.71/32 with aigp-metric 71
test_func = functools.partial(_bgp_check_aigp_metric, r4, "10.0.0.71/32", 71)
_, result = topotest.run_and_expect(test_func, None, count=60, wait=1)