summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_vpp.py
diff options
context:
space:
mode:
authorNataliia Solomko <natalirs1985@gmail.com>2025-02-14 11:23:48 +0200
committerNataliia Solomko <natalirs1985@gmail.com>2025-02-14 11:37:56 +0200
commit81626fb5da73af302ef8444c12679edc13bef1f5 (patch)
tree6d7130f8a316e3757b03cdc4ae8685f05e222249 /smoketest/scripts/cli/test_vpp.py
parent6dae0f206d67e0ef8678305c279505e3a5da6208 (diff)
downloadvyos-1x-81626fb5da73af302ef8444c12679edc13bef1f5.tar.gz
vyos-1x-81626fb5da73af302ef8444c12679edc13bef1f5.zip
T7067: VPP CPU corelist-workers should be calculated and verified
Diffstat (limited to 'smoketest/scripts/cli/test_vpp.py')
-rwxr-xr-xsmoketest/scripts/cli/test_vpp.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_vpp.py b/smoketest/scripts/cli/test_vpp.py
index 03ee68beb..86b00da44 100755
--- a/smoketest/scripts/cli/test_vpp.py
+++ b/smoketest/scripts/cli/test_vpp.py
@@ -1022,6 +1022,48 @@ class TestVPP(VyOSUnitTestSHIM.TestCase):
for config_entry in config_entries:
self.assertIn(config_entry, config)
+ def test_12_vpp_cpu_corelist_workers(self):
+ main_core = '0'
+ corelist_workers = ['1', '2-3']
+
+ for worker in corelist_workers:
+ self.cli_set(base_path + ['settings', 'cpu', 'corelist-workers', worker])
+
+ # "cpu corelist-workers" reqiures main-core to be set
+ # expect raise ConfigError
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+
+ self.cli_set(base_path + ['settings', 'cpu', 'main-core', main_core])
+
+ # corelist-workers and workers cannot be used at the same time
+ # expect raise ConfigError
+ self.cli_set(base_path + ['settings', 'cpu', 'workers', '2'])
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+ self.cli_delete(base_path + ['settings', 'cpu', 'workers'])
+
+ # verify corelist-workers are set not correctly
+ # expect raise ConfigError
+ self.cli_set(base_path + ['settings', 'cpu', 'corelist-workers', '99-101'])
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+
+ self.cli_delete(base_path + ['settings', 'cpu', 'corelist-workers', '99-101'])
+
+ self.cli_commit()
+
+ config_entries = (
+ f'main-core {main_core}',
+ f'corelist-workers {",".join(corelist_workers)}',
+ 'dev 0000:00:00.0',
+ )
+
+ # Check configured options
+ config = read_file(VPP_CONF)
+ for config_entry in config_entries:
+ self.assertIn(config_entry, config)
+
if __name__ == '__main__':
unittest.main(verbosity=2)