diff options
| author | Daniil Baturin <daniil@vyos.io> | 2025-10-28 15:23:37 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-28 15:23:37 +0000 |
| commit | ecc4c85b799047f51e4a32ae5b0590017a6ce374 (patch) | |
| tree | 9c210ed6efa3f9ae6b503d099963b96b8b75db34 /smoketest/scripts/cli | |
| parent | 761968da584199e74a23d6381b3f6b400906083f (diff) | |
| parent | 4c08b0694c65f1bb434538980a44a94e5ae15d24 (diff) | |
| download | vyos-1x-ecc4c85b799047f51e4a32ae5b0590017a6ce374.tar.gz vyos-1x-ecc4c85b799047f51e4a32ae5b0590017a6ce374.zip | |
Merge pull request #4796 from natali-rs1985/T7938
T7938: VPP: Rewrite sFlow implementation
Diffstat (limited to 'smoketest/scripts/cli')
| -rwxr-xr-x | smoketest/scripts/cli/test_vpp.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_vpp.py b/smoketest/scripts/cli/test_vpp.py index e6b85bd8d..6efa04713 100755 --- a/smoketest/scripts/cli/test_vpp.py +++ b/smoketest/scripts/cli/test_vpp.py @@ -1426,10 +1426,17 @@ class TestVPP(VyOSUnitTestSHIM.TestCase): def test_17_vpp_sflow(self): base_sflow = ['system', 'sflow'] + sampling_rate = '1500' + polling_interval = '55' + header_bytes = '256' + iface_2 = 'eth0' self.cli_set(base_path + ['sflow', 'interface', interface]) + self.cli_set(base_path + ['sflow', 'header-bytes', header_bytes]) self.cli_set(base_sflow + ['interface', interface]) self.cli_set(base_sflow + ['server', '127.0.0.1']) + self.cli_set(base_sflow + ['sampling-rate', sampling_rate]) + self.cli_set(base_sflow + ['polling', polling_interval]) self.cli_set(base_sflow + ['vpp']) self.cli_commit() @@ -1437,7 +1444,10 @@ class TestVPP(VyOSUnitTestSHIM.TestCase): _, out = rc_cmd('sudo vppctl show sflow') expected_entries = ( + f'sflow sampling-rate {sampling_rate}', 'sflow sampling-direction ingress', + f'sflow polling-interval {polling_interval}', + f'sflow header-bytes {header_bytes}', f'sflow enable {interface}', 'interfaces enabled: 1', ) @@ -1445,9 +1455,36 @@ class TestVPP(VyOSUnitTestSHIM.TestCase): for expected_entry in expected_entries: self.assertIn(expected_entry, out) + self.cli_set(base_path + ['settings', 'interface', iface_2, 'driver', driver]) + self.cli_set(base_path + ['sflow', 'interface', iface_2]) + + self.cli_commit() + + # Check sFlow + _, out = rc_cmd('sudo vppctl show sflow') + + expected_entries = ( + f'sflow enable {interface}', + f'sflow enable {iface_2}', + 'interfaces enabled: 2', + ) + + for expected_entry in expected_entries: + self.assertIn(expected_entry, out) + + # cannot delete system sFlow configuration if VPP sFlow is configured + # expect raise ConfigError self.cli_delete(base_sflow) + with self.assertRaises(ConfigSessionError): + self.cli_commit() + + self.cli_delete(base_path + ['sflow']) self.cli_commit() + # Check interfaces are deleted from VPP sFlow + _, out = rc_cmd('sudo vppctl show sflow') + self.assertIn('interfaces enabled: 0', out) + def test_18_resource_limits(self): max_map_count = '100000' shmmax = '55555555555555' |
