From 4df8a8e8094a22e315f3a8abba04ed0350d5da6e Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 13 Jul 2021 01:20:53 +0900 Subject: [PATCH] test-network: add a testcase for semi-static route with Gateway=_dhcp4 when UseGateway=no --- test/test-network/systemd-networkd-tests.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index cffc79a981a..dc31d133c4e 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -4426,9 +4426,24 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): start_dnsmasq() self.wait_online(['veth99:routable', 'veth-peer:routable']) - output = check_output('ip route list dev veth99 10.0.0.0/8') + output = check_output('ip route list dev veth99') + print(output) + self.assertRegex(output, 'default via 192.168.5.1 proto dhcp src 192.168.5.[0-9]*') + self.assertIn('10.0.0.0/8 via 192.168.5.1 proto dhcp', output) + + with open(os.path.join(network_unit_file_path, 'dhcp-client-gateway-ipv4.network'), mode='a') as f: + f.write('[DHCPv4]\nUseGateway=no\n') + + rc = call(*networkctl_cmd, 'reload', env=env) + self.assertEqual(rc, 0) + + time.sleep(2) + self.wait_online(['veth99:routable', 'veth-peer:routable']) + + output = check_output('ip route list dev veth99') print(output) - self.assertRegex(output, '10.0.0.0/8 via 192.168.5.1 proto dhcp') + self.assertNotRegex(output, 'default via 192.168.5.1 proto dhcp src 192.168.5.[0-9]*') + self.assertIn('10.0.0.0/8 via 192.168.5.1 proto dhcp', output) def test_dhcp_client_gateway_ipv6(self): copy_unit_to_networkd_unit_path('25-veth.netdev', 'dhcp-server-veth-peer.network', -- 2.47.3