From ffb87cd0eb40936e97d299361daa15ec7b216acf Mon Sep 17 00:00:00 2001 From: Ahmed Karic Date: Mon, 9 Sep 2024 15:39:08 +0200 Subject: [PATCH] test: update infix_dhcp test topologies --- test/case/infix_dhcp/dhcp_basic/test.py | 8 ++++---- test/case/infix_dhcp/dhcp_basic/topology.dot | 17 ++++++++--------- test/case/infix_dhcp/dhcp_basic/topology.png | Bin 6969 -> 8832 bytes test/case/infix_dhcp/dhcp_router/test.py | 8 ++++---- test/case/infix_dhcp/dhcp_router/topology.dot | 17 ++++++++--------- test/case/infix_dhcp/dhcp_router/topology.png | Bin 6969 -> 10599 bytes test/case/infix_dhcp/dhcp_routes/test.py | 10 +++++----- test/case/infix_dhcp/dhcp_routes/topology.dot | 17 ++++++++--------- test/case/infix_dhcp/dhcp_routes/topology.png | Bin 6969 -> 11045 bytes 9 files changed, 37 insertions(+), 40 deletions(-) diff --git a/test/case/infix_dhcp/dhcp_basic/test.py b/test/case/infix_dhcp/dhcp_basic/test.py index bd7d03286..e5eecf4cf 100755 --- a/test/case/infix_dhcp/dhcp_basic/test.py +++ b/test/case/infix_dhcp/dhcp_basic/test.py @@ -18,13 +18,13 @@ ADDRESS = '10.0.0.42' with test.step("Initialize"): env = infamy.Env() - target = env.attach("target", "mgmt") + client = env.attach("client", "mgmt") _, host = env.ltop.xlate("host", "data") with infamy.IsolatedMacVlan(host) as netns: netns.addip("10.0.0.1") with infamy.dhcp.Server(netns, ip=ADDRESS): - _, port = env.ltop.xlate("target", "data") + _, port = env.ltop.xlate("client", "data") config = { "dhcp-client": { "client-if": [{ @@ -32,9 +32,9 @@ }] } } - target.put_config_dict("infix-dhcp-client", config) + client.put_config_dict("infix-dhcp-client", config) with test.step(f"Waiting for client to set DHCP lease {ADDRESS}"): - until(lambda: iface.address_exist(target, port, ADDRESS)) + until(lambda: iface.address_exist(client, port, ADDRESS)) test.succeed() diff --git a/test/case/infix_dhcp/dhcp_basic/topology.dot b/test/case/infix_dhcp/dhcp_basic/topology.dot index 1e367f14c..5b31e5991 100644 --- a/test/case/infix_dhcp/dhcp_basic/topology.dot +++ b/test/case/infix_dhcp/dhcp_basic/topology.dot @@ -1,24 +1,23 @@ graph "1x2" { layout="neato"; overlap="false"; - esep="+20"; + esep="+80"; node [shape=record, fontname="monospace"]; edge [color="cornflowerblue", penwidth="2"]; host [ - label="host | { tgt | | data }", - pos="0,12!", + label="host \n(10.0.0.1) | { tgt | data }", + pos="0,20!", kind="controller", ]; - target [ - label="{ mgmt | data } | target", - pos="10,12!", - + client [ + label="{ mgmt | data } | client", + pos="200,20!", kind="infix", ]; - host:tgt -- target:mgmt [kind=mgmt] - host:data -- target:data + host:tgt -- client:mgmt [kind=mgmt, color=black, taillabel="10.0.0.42/24"] + host:data -- client:data } diff --git a/test/case/infix_dhcp/dhcp_basic/topology.png b/test/case/infix_dhcp/dhcp_basic/topology.png index 953e7544db8b83cab764a1822bd731dfb8c52cc5..23cd9b41351809dd83dc568ddefe86ae6c1ff8a6 100644 GIT binary patch literal 8832 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 a1)37G{Q5!J4j!C)MPwxvB#Oig1O5loL5+<7 literal 6969 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