diff options
Diffstat (limited to 'scripts/cli/test_interfaces_bridge.py')
-rwxr-xr-x | scripts/cli/test_interfaces_bridge.py | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/scripts/cli/test_interfaces_bridge.py b/scripts/cli/test_interfaces_bridge.py index 03c78c210..bc0bb69c6 100755 --- a/scripts/cli/test_interfaces_bridge.py +++ b/scripts/cli/test_interfaces_bridge.py @@ -14,6 +14,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. +import os import unittest from base_interfaces_test import BasicInterfaceTest @@ -23,35 +24,45 @@ class BridgeInterfaceTest(BasicInterfaceTest.BaseTest): def setUp(self): super().setUp() + self._test_ipv6 = True + self._base_path = ['interfaces', 'bridge'] self._interfaces = ['br0'] - def test_add_remove_member(self): - members = [] + self._members = [] # we need to filter out VLAN interfaces identified by a dot (.) # in their name - just in case! - for tmp in Section.interfaces("ethernet"): - if not '.' in tmp: - members.append(tmp) + if 'TEST_ETH' in os.environ: + self._members = os.environ['TEST_ETH'].split() + else: + for tmp in Section.interfaces("ethernet"): + if not '.' in tmp: + self._members.append(tmp) - for intf in self._interfaces: - cost = 1000 - priority = 10 + self._options['br0'] = [] + for member in self._members: + self._options['br0'].append(f'member interface {member}') - self.session.set(self._base_path + [intf, 'stp']) + def test_add_remove_member(self): + for interface in self._interfaces: + base = self._base_path + [interface] + self.session.set(base + ['stp']) + self.session.set(base + ['address', '192.0.2.1/24']) + cost = 1000 + priority = 10 # assign members to bridge interface - for member in members: - self.session.set(self._base_path + [intf, 'member', 'interface', member]) - self.session.set(self._base_path + [intf, 'member', 'interface', member, 'cost', str(cost)]) - self.session.set(self._base_path + [intf, 'member', 'interface', member, 'priority', str(priority)]) + for member in self._members: + base_member = base + ['member', 'interface', member] + self.session.set(base_member + ['cost', str(cost)]) + self.session.set(base_member + ['priority', str(priority)]) cost += 1 priority += 1 self.session.commit() - for intf in self._interfaces: - self.session.delete(self._base_path + [intf, 'member']) + for interface in self._interfaces: + self.session.delete(self._base_path + [interface, 'member']) self.session.commit() |