topotests: bgp_aggregate_address_topo1, add test for suppressed keyword

Add a test that checks that the BGP route to 192.168.0.1 has all the
necessary json outputs. This route is chosen because it is a suppressed
route.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
This commit is contained in:
Philippe Guibert 2025-01-24 13:38:21 +01:00
parent c742817312
commit e1ab99261a
2 changed files with 60 additions and 0 deletions

View File

@ -0,0 +1,41 @@
{
"prefix":"192.168.0.1/32",
"paths":[
{
"aspath":{
"string":"65001",
"segments":[
{
"type":"as-sequence",
"list":[
65001
]
}
],
"length":1
},
"suppressed":true,
"origin":"IGP",
"metric":10,
"valid":true,
"bestpath":{
"overall":true,
"selectionReason":"First path received"
},
"nexthops":[
{
"ip":"10.0.0.2",
"afi":"ipv4",
"metric":0,
"accessible":true,
"used":true
}
],
"peer":{
"peerId":"10.0.0.2",
"routerId":"10.254.254.3",
"type":"external"
}
}
]
}

View File

@ -13,6 +13,7 @@
Test BGP aggregate address features.
"""
import json
import os
import sys
import pytest
@ -265,6 +266,24 @@ match ip address acl-sup-three
)
def test_check_bgp_attribute():
"Dump the suppressed attribute of the 192.168.0.1/32 prefix in r1."
tgen = get_topogen()
logger.info("Test that the BGP path to 192.168.0.1 is as expected.")
expected = json.loads(open("{}/r1/bgp_192_168_0_1.json".format(CWD)).read())
test_func = functools.partial(
topotest.router_json_cmp,
tgen.gears["r1"],
"show bgp ipv4 192.168.0.1/32 json",
expected,
)
_, result = topotest.run_and_expect(test_func, None, count=20, wait=1)
assertmsg = '"r1" BGP 192.168.0.1 route output failed'
assert result is None, assertmsg
def test_memory_leak():
"Run the memory leak test and report results."
tgen = get_topogen()