summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViacheslav Hletenko <v.gletenko@vyos.io>2022-04-14 13:52:01 +0000
committerViacheslav Hletenko <v.gletenko@vyos.io>2022-04-14 13:58:29 +0000
commitae815d1b11a4c17df6aea45e3fc87772a0e40e6a (patch)
treef3deed450eb8824c86a862251099f9955952ac23
parent4f8ae0d3d51b62caeec856386844074f38935b87 (diff)
downloadvyos-1x-ae815d1b11a4c17df6aea45e3fc87772a0e40e6a.tar.gz
vyos-1x-ae815d1b11a4c17df6aea45e3fc87772a0e40e6a.zip
smoketest: T4354: Add test for uniq bonding members
Extend bonding smoketest Add descriptions to bonding members We encountered a situation where adding any configuration for member of bonding interface excludes the interface from bonding
-rwxr-xr-xsmoketest/scripts/cli/test_interfaces_bonding.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_interfaces_bonding.py b/smoketest/scripts/cli/test_interfaces_bonding.py
index 4f2fe979a..9bb561275 100755
--- a/smoketest/scripts/cli/test_interfaces_bonding.py
+++ b/smoketest/scripts/cli/test_interfaces_bonding.py
@@ -165,5 +165,27 @@ class BondingInterfaceTest(BasicInterfaceTest.TestCase):
self.cli_commit()
+ def test_bonding_uniq_member_description(self):
+ ethernet_path = ['interfaces', 'ethernet']
+ for interface in self._interfaces:
+ for option in self._options.get(interface, []):
+ self.cli_set(self._base_path + [interface] + option.split())
+
+ self.cli_commit()
+
+ # Add any changes on bonding members
+ # For example add description on separate ethX interfaces
+ for interface in self._interfaces:
+ for member in self._members:
+ self.cli_set(ethernet_path + [member, 'description', member + '_interface'])
+
+ self.cli_commit()
+
+ # verify config
+ for interface in self._interfaces:
+ slaves = read_file(f'/sys/class/net/{interface}/bonding/slaves').split()
+ for member in self._members:
+ self.assertIn(member, slaves)
+
if __name__ == '__main__':
unittest.main(verbosity=2)