From 1f4345b5ed0cc777017dd9cee74ae45e4e28e88d Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Fri, 31 May 2024 10:56:30 +0900 Subject: [PATCH] networkd-test: first wait for interface being configured DNS setting propagation to resolved may take some time. --- test/networkd-test.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/test/networkd-test.py b/test/networkd-test.py index 7911c816d71..47a3ad79632 100755 --- a/test/networkd-test.py +++ b/test/networkd-test.py @@ -1024,17 +1024,19 @@ DNS=127.0.0.1 self.start_unit('systemd-resolved') self.start_unit('systemd-networkd') - for timeout in range(50): + subprocess.check_call([NETWORKD_WAIT_ONLINE, '--interface', 'dummy0', '--timeout=10']) + + out = subprocess.check_output(['networkctl', 'status', 'dummy0']) + self.assertIn(b'50-test.network.d/dns.conf', out) + + for _ in range(50): with open(RESOLV_CONF) as f: contents = f.read() - if ' 127.0.0.1' in contents and '192.168.42.1' in contents: + if 'nameserver 127.0.0.1\n' in contents and 'nameserver 192.168.42.1\n' in contents: break time.sleep(0.1) - self.assertIn('nameserver 192.168.42.1\n', contents) - self.assertIn('nameserver 127.0.0.1\n', contents) - - out = subprocess.check_output(['networkctl', 'status', 'dummy0']) - self.assertIn(b'50-test.network.d/dns.conf', out) + else: + self.fail(f'Expected DNS servers not found in resolv.conf: {contents}') def test_dhcp_timezone(self): '''networkd sets time zone from DHCP''' -- 2.47.3