summaryrefslogtreecommitdiff
path: root/tests/topotests/bgp_oad/test_bgp_oad.py
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2024-01-11 10:34:05 +0200
committerDonatas Abraitis <donatas@opensourcerouting.org>2024-01-11 10:53:57 +0200
commit1c491dfbe646f885b0a570666da3ba1e062c2a6c (patch)
tree48031609798aba83a715b556ecfec981addea5c3 /tests/topotests/bgp_oad/test_bgp_oad.py
parent584b031a4d0b7e20cd3835c8945451dcdac07998 (diff)
tests: Check if the route over eBGP is preferred when eBGP-OAD is used
If at least one of the candidate routes was received via EBGP, remove from consideration all routes that were received via EBGP-OAD and IBGP. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
Diffstat (limited to 'tests/topotests/bgp_oad/test_bgp_oad.py')
-rw-r--r--tests/topotests/bgp_oad/test_bgp_oad.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/tests/topotests/bgp_oad/test_bgp_oad.py b/tests/topotests/bgp_oad/test_bgp_oad.py
index a2e3eddc26..b26c548357 100644
--- a/tests/topotests/bgp_oad/test_bgp_oad.py
+++ b/tests/topotests/bgp_oad/test_bgp_oad.py
@@ -31,7 +31,7 @@ pytestmark = [pytest.mark.bgpd]
def setup_module(mod):
- topodef = {"s1": ("r1", "r2"), "s2": ("r2", "r3")}
+ topodef = {"s1": ("r1", "r2", "r4"), "s2": ("r2", "r3"), "s3": ("r4", "r5")}
tgen = Topogen(topodef, mod.__name__)
tgen.start_topology()
@@ -64,7 +64,21 @@ def test_bgp_dynamic_capability_role():
"aspath": {"string": "65002 65003"},
"metric": 123,
"locPrf": 123,
- }
+ "peer": {
+ "hostname": "r2",
+ "type": "external (oad)",
+ },
+ },
+ {
+ "aspath": {"string": "65004 65005"},
+ "metric": 123,
+ "locPrf": 123,
+ "bestpath": {"selectionReason": "Peer Type"},
+ "peer": {
+ "hostname": "r4",
+ "type": "external",
+ },
+ },
]
}
return topotest.json_cmp(output, expected)