From 0f9efffaeb84964a3ab0f32271fba38f3bee2394 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 24 Oct 2023 18:38:30 +0900 Subject: [PATCH] test-network: wait for the state file being updated Also, sync state files before read. Addresses the first issue in #29678. --- test/test-network/systemd-networkd-tests.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 122f9e875dd..58c289748db 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -5122,6 +5122,15 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): ra_mode='ra-stateless') self.wait_online(['veth99:routable', 'veth-peer:routable']) + # DHCPv6 REPLY for INFORMATION-REQUEST may be received after the link entered configured state. + # Let's wait for the expected DNS server being listed in the state file. + for _ in range(100): + output = read_link_state_file('veth99') + print(output) + if 'DNS=2600::ee' in output: + break + time.sleep(.2) + # Check link state file print('## link state file') output = read_link_state_file('veth99') @@ -5169,6 +5178,9 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): print(output) self.assertRegex(output, 'token :: dev veth99') + # Make manager and link state file updated + check_output(*resolvectl_cmd, 'revert', 'veth99', env=env) + # Check link state file print('## link state file') output = read_link_state_file('veth99') @@ -5215,6 +5227,9 @@ class NetworkdDHCPClientTests(unittest.TestCase, Utilities): print(output) self.assertRegex(output, 'via fe80::1034:56ff:fe78:9abd') + # Make manager and link state file updated + check_output(*resolvectl_cmd, 'revert', 'veth99', env=env) + # Check link state file print('## link state file') output = read_link_state_file('veth99') -- 2.47.3