From 0ef830cf54075967db5371695cacee5f16f08123 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Thu, 28 Mar 2019 05:53:45 +0900 Subject: [PATCH] test-network: merge tests for [Route] section --- .../conf/25-route-gateway-on-link.network | 13 -- .../conf/25-route-gateway.network | 14 --- .../conf/25-route-reverse-order.network | 15 --- .../conf/25-route-section.network | 8 -- .../test-network/conf/25-route-static.network | 46 ++++++++ .../conf/25-route-tcp-window-settings.network | 10 -- test/test-network/conf/25-route-type.network | 14 --- test/test-network/systemd-networkd-tests.py | 111 ++++-------------- 8 files changed, 72 insertions(+), 159 deletions(-) delete mode 100644 test/test-network/conf/25-route-gateway-on-link.network delete mode 100644 test/test-network/conf/25-route-gateway.network delete mode 100644 test/test-network/conf/25-route-reverse-order.network delete mode 100644 test/test-network/conf/25-route-section.network create mode 100644 test/test-network/conf/25-route-static.network delete mode 100644 test/test-network/conf/25-route-tcp-window-settings.network delete mode 100644 test/test-network/conf/25-route-type.network diff --git a/test/test-network/conf/25-route-gateway-on-link.network b/test/test-network/conf/25-route-gateway-on-link.network deleted file mode 100644 index 14894c54bfb..00000000000 --- a/test/test-network/conf/25-route-gateway-on-link.network +++ /dev/null @@ -1,13 +0,0 @@ -[Match] -Name=dummy98 - -[Address] -Address=149.10.124.58/28 - -[Route] -Destination=149.10.124.64 -Scope=link - -[Route] -Gateway=149.10.125.65 -GatewayOnLink=true diff --git a/test/test-network/conf/25-route-gateway.network b/test/test-network/conf/25-route-gateway.network deleted file mode 100644 index 29d07f182a9..00000000000 --- a/test/test-network/conf/25-route-gateway.network +++ /dev/null @@ -1,14 +0,0 @@ -# test for issue #5430 - -[Match] -Name=dummy98 - -[Address] -Address=149.10.124.58/28 - -[Route] -Destination=149.10.124.64 -Scope=link - -[Route] -Gateway=149.10.124.64 diff --git a/test/test-network/conf/25-route-reverse-order.network b/test/test-network/conf/25-route-reverse-order.network deleted file mode 100644 index d1b47ad4349..00000000000 --- a/test/test-network/conf/25-route-reverse-order.network +++ /dev/null @@ -1,15 +0,0 @@ -[Match] -Name=dummy98 - -[Network] -LinkLocalAddressing=ipv6 -Address=2001:1234:5:8f63::1/128 -IPv6AcceptRA=no - -[Route] -Destination=2001:1234:5:8fff:ff:ff:ff:ff/128 -Scope=link - -[Route] -Destination=::/0 -Gateway=2001:1234:5:8fff:ff:ff:ff:ff diff --git a/test/test-network/conf/25-route-section.network b/test/test-network/conf/25-route-section.network deleted file mode 100644 index c9c7a722c59..00000000000 --- a/test/test-network/conf/25-route-section.network +++ /dev/null @@ -1,8 +0,0 @@ -[Match] -Name=dummy98 - -[Network] -Address=192.168.0.15/24 - -[Route] -Gateway=192.168.0.1 diff --git a/test/test-network/conf/25-route-static.network b/test/test-network/conf/25-route-static.network new file mode 100644 index 00000000000..50b2ce0c3bc --- /dev/null +++ b/test/test-network/conf/25-route-static.network @@ -0,0 +1,46 @@ +[Match] +Name=dummy98 + +[Network] +IPv6AcceptRA=no +Address=2001:1234:5:8f63::1/128 +Address=149.10.124.58/28 + +[Route] +Destination=2001:1234:5:8fff:ff:ff:ff:ff/128 +Scope=link + +[Route] +Destination=::/0 +Gateway=2001:1234:5:8fff:ff:ff:ff:ff + +[Route] +Destination=149.10.124.64 +Scope=link + +[Route] +Gateway=149.10.124.64 + +[Route] +Gateway=149.10.125.65 +GatewayOnLink=yes + +[Route] +Destination=192.168.1.1 +InitialCongestionWindow=20 + +[Route] +Destination=192.168.1.2 +InitialAdvertisedReceiveWindow=30 + +[Route] +Type=blackhole +Destination=202.54.1.2 + +[Route] +Type=unreachable +Destination=202.54.1.3 + +[Route] +Type=prohibit +Destination=202.54.1.4 diff --git a/test/test-network/conf/25-route-tcp-window-settings.network b/test/test-network/conf/25-route-tcp-window-settings.network deleted file mode 100644 index e77a721740c..00000000000 --- a/test/test-network/conf/25-route-tcp-window-settings.network +++ /dev/null @@ -1,10 +0,0 @@ -[Match] -Name=test1 - -[Route] -Destination=192.168.1.1 -InitialCongestionWindow=20 - -[Route] -Destination=192.168.1.2 -InitialAdvertisedReceiveWindow=30 diff --git a/test/test-network/conf/25-route-type.network b/test/test-network/conf/25-route-type.network deleted file mode 100644 index 9a104137de5..00000000000 --- a/test/test-network/conf/25-route-type.network +++ /dev/null @@ -1,14 +0,0 @@ -[Match] -Name=dummy98 - -[Route] -Type=blackhole -Destination=202.54.1.2 - -[Route] -Type=unreachable -Destination=202.54.1.3 - -[Route] -Type=prohibit -Destination=202.54.1.4 diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py index 53533f211ed..9ff7e37a3e8 100755 --- a/test/test-network/systemd-networkd-tests.py +++ b/test/test-network/systemd-networkd-tests.py @@ -880,13 +880,8 @@ class NetworkdNetWorkTests(unittest.TestCase, Utilities): '25-link-local-addressing-no.network', '25-link-local-addressing-yes.network', '25-link-section-unmanaged.network', - '25-route-gateway.network', - '25-route-gateway-on-link.network', '25-route-ipv6-src.network', - '25-route-reverse-order.network', - '25-route-section.network', - '25-route-tcp-window-settings.network', - '25-route-type.network', + '25-route-static.network', '25-sysctl-disable-ipv6.network', '25-sysctl.network', 'configure-without-carrier.network', @@ -1049,100 +1044,46 @@ class NetworkdNetWorkTests(unittest.TestCase, Utilities): subprocess.call(['ip', 'rule', 'del', 'table', '7']) - def test_ip_route(self): - self.copy_unit_to_networkd_unit_path('25-route-section.network', '12-dummy.netdev') - self.start_networkd() - - self.assertTrue(self.link_exits('dummy98')) - - output = subprocess.check_output(['ip', 'route', 'list', 'dev', 'dummy98']).rstrip().decode('utf-8') - print(output) - self.assertRegex(output, '192.168.0.1') - self.assertRegex(output, 'static') - self.assertRegex(output, '192.168.0.0/24') - - def test_ip_route_reverse(self): - self.copy_unit_to_networkd_unit_path('25-route-reverse-order.network', '12-dummy.netdev') - self.start_networkd() + def test_route_static(self): + self.copy_unit_to_networkd_unit_path('25-route-static.network', '12-dummy.netdev') + self.start_networkd(0) - self.assertTrue(self.link_exits('dummy98')) + self.wait_online(['dummy98:routable']) output = subprocess.check_output(['ip', '-6', 'route', 'show', 'dev', 'dummy98']).rstrip().decode('utf-8') print(output) - self.assertRegex(output, '2001:1234:5:8fff:ff:ff:ff:ff') - self.assertRegex(output, '2001:1234:5:8f63::1') - - def test_ip_route_blackhole_unreachable_prohibit(self): - self.copy_unit_to_networkd_unit_path('25-route-type.network', '12-dummy.netdev') - self.start_networkd() - - self.assertTrue(self.link_exits('dummy98')) - - output = subprocess.check_output(['ip', 'route', 'list']).rstrip().decode('utf-8') - print(output) - self.assertRegex(output, 'blackhole') - self.assertRegex(output, 'unreachable') - self.assertRegex(output, 'prohibit') - - subprocess.call(['ip', 'route', 'del', 'blackhole', '202.54.1.2']) - subprocess.call(['ip', 'route', 'del', 'unreachable', '202.54.1.3']) - subprocess.call(['ip', 'route', 'del', 'prohibit', '202.54.1.4']) + self.assertRegex(output, '2001:1234:5:8fff:ff:ff:ff:ff proto static') + self.assertRegex(output, '2001:1234:5:8f63::1 proto kernel') - def test_ip_route_tcp_window(self): - self.copy_unit_to_networkd_unit_path('25-route-tcp-window-settings.network', '11-dummy.netdev') - self.start_networkd() + output = subprocess.check_output(['ip', '-6', 'route', 'show', 'dev', 'dummy98', 'default']).rstrip().decode('utf-8') + self.assertRegex(output, 'default via 2001:1234:5:8fff:ff:ff:ff:ff proto static metric 1024 pref medium') - self.assertTrue(self.link_exits('test1')) - - output = subprocess.check_output(['ip', 'route', 'list']).rstrip().decode('utf-8') + output = subprocess.check_output(['ip', '-4', 'route', 'show', 'dev', 'dummy98']).rstrip().decode('utf-8') print(output) - self.assertRegex(output, 'initcwnd 20') - self.assertRegex(output, 'initrwnd 30') - - def test_ip_route_gateway(self): - self.copy_unit_to_networkd_unit_path('25-route-gateway.network', '12-dummy.netdev') - self.start_networkd() + self.assertRegex(output, '149.10.124.48/28 proto kernel scope link src 149.10.124.58') + self.assertRegex(output, '149.10.124.64 proto static scope link') + self.assertRegex(output, '192.168.1.1 proto static initcwnd 20') + self.assertRegex(output, '192.168.1.2 proto static initrwnd 30') - self.assertTrue(self.link_exits('dummy98')) + output = subprocess.check_output(['ip', '-4', 'route', 'show', 'dev', 'dummy98', 'default']).rstrip().decode('utf-8') + self.assertRegex(output, 'default via 149.10.125.65 proto static onlink') + self.assertRegex(output, 'default via 149.10.124.64 proto static') - output = subprocess.check_output(['ip', 'route', 'list', 'dev', 'dummy98', 'default']).rstrip().decode('utf-8') + output = subprocess.check_output(['ip', 'route', 'show', 'type', 'blackhole']).rstrip().decode('utf-8') print(output) - self.assertRegex(output, 'default') - self.assertRegex(output, 'via') - self.assertRegex(output, '149.10.124.64') - self.assertRegex(output, 'proto') - self.assertRegex(output, 'static') + self.assertRegex(output, 'blackhole 202.54.1.2 proto static') - output = subprocess.check_output(['ip', 'route', 'list', 'dev', 'dummy98', 'src', '149.10.124.58']).rstrip().decode('utf-8') + output = subprocess.check_output(['ip', 'route', 'show', 'type', 'unreachable']).rstrip().decode('utf-8') print(output) - self.assertRegex(output, '149.10.124.48/28') - self.assertRegex(output, 'proto') - self.assertRegex(output, 'kernel') - self.assertRegex(output, 'scope') - self.assertRegex(output, 'link') + self.assertRegex(output, 'unreachable 202.54.1.3 proto static') - def test_ip_route_gateway_on_link(self): - self.copy_unit_to_networkd_unit_path('25-route-gateway-on-link.network', '12-dummy.netdev') - self.start_networkd() - - self.assertTrue(self.link_exits('dummy98')) - - output = subprocess.check_output(['ip', 'route', 'list', 'dev', 'dummy98', 'default']).rstrip().decode('utf-8') + output = subprocess.check_output(['ip', 'route', 'show', 'type', 'prohibit']).rstrip().decode('utf-8') print(output) - self.assertRegex(output, 'default') - self.assertRegex(output, 'via') - self.assertRegex(output, '149.10.125.65') - self.assertRegex(output, 'proto') - self.assertRegex(output, 'static') - self.assertRegex(output, 'onlink') + self.assertRegex(output, 'prohibit 202.54.1.4 proto static') - output = subprocess.check_output(['ip', 'route', 'list', 'dev', 'dummy98', 'src', '149.10.124.58']).rstrip().decode('utf-8') - print(output) - self.assertRegex(output, '149.10.124.48/28') - self.assertRegex(output, 'proto') - self.assertRegex(output, 'kernel') - self.assertRegex(output, 'scope') - self.assertRegex(output, 'link') + subprocess.call(['ip', 'route', 'del', 'blackhole', '202.54.1.2']) + subprocess.call(['ip', 'route', 'del', 'unreachable', '202.54.1.3']) + subprocess.call(['ip', 'route', 'del', 'prohibit', '202.54.1.4']) def test_ip_route_ipv6_src_route(self): # a dummy device does not make the addresses go through tentative state, so we -- 2.47.3