diff options
author | Christian Breunig <christian@breunig.cc> | 2023-05-26 22:21:55 +0200 |
---|---|---|
committer | Christian Breunig <christian@breunig.cc> | 2023-05-27 08:57:12 +0200 |
commit | ec8ffd2c967d178c913be645c896434aa3212c9c (patch) | |
tree | 8b6df4cfa2ad2d4ca0fd570c47c685d8ec7d1295 /smoketest/scripts/cli/test_interfaces_loopback.py | |
parent | 1395704d2692f2d57368e8cfa5b7b9e8791164cd (diff) | |
download | vyos-1x-ec8ffd2c967d178c913be645c896434aa3212c9c.tar.gz vyos-1x-ec8ffd2c967d178c913be645c896434aa3212c9c.zip |
smoketest: T5242: automatically detect interface "capabilities"
Current state of vyos-1x smoketests have hardcoded features to test. The
feature support is inside the base class BasicInterfaceTest
class BasicInterfaceTest:
class TestCase(VyOSUnitTestSHIM.TestCase):
_test_dhcp = False
_test_ip = False
_test_mtu = False
_test_vlan = False
_test_qinq = False
_test_ipv6 = False
_test_ipv6_pd = False
_test_ipv6_dhcpc6 = False
_test_mirror = False
All derived classes need to enable the tests that are supported on this
interface type. Adding new feature to a given interface (like vif support in
T5237) require manually enabling those tests for the given interface.
It would make much more sense, if we can query the config backend for supported
interface options - or in other words - is there a CLI node available that
corresponds to set interfaces ethernet <name> vif - if that's the case,
_test_vlan = True.
Diffstat (limited to 'smoketest/scripts/cli/test_interfaces_loopback.py')
-rwxr-xr-x | smoketest/scripts/cli/test_interfaces_loopback.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/smoketest/scripts/cli/test_interfaces_loopback.py b/smoketest/scripts/cli/test_interfaces_loopback.py index 5ff9c250e..cde90189b 100755 --- a/smoketest/scripts/cli/test_interfaces_loopback.py +++ b/smoketest/scripts/cli/test_interfaces_loopback.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# Copyright (C) 2020-2021 VyOS maintainers and contributors +# Copyright (C) 2020-2023 VyOS maintainers and contributors # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 or later as @@ -31,6 +31,9 @@ class LoopbackInterfaceTest(BasicInterfaceTest.TestCase): # call base-classes classmethod super(LoopbackInterfaceTest, cls).setUpClass() + # we need to override tearDown() as loopback interfaces are ephemeral and + # will always be present on the system - the base class check will fail as + # the loopback interface will still exist. def tearDown(self): self.cli_delete(self._base_path) self.cli_commit() |