summaryrefslogtreecommitdiff
path: root/src/tests
diff options
context:
space:
mode:
authorViacheslav Hletenko <v.gletenko@vyos.io>2026-04-24 15:43:36 +0300
committerGitHub <noreply@github.com>2026-04-24 15:43:36 +0300
commit0cc2bbfc54370cce2d2c7540fb155e464207f1be (patch)
tree2b608d1bbed6c35524accec3bfd2d178519b6307 /src/tests
parentbce0b25640665f105f3fd270f6ba9571d14fb6e6 (diff)
parent9cb6f4c001fa5d4f4ed26850fc99dde4c3692c8f (diff)
downloadvyos-1x-0cc2bbfc54370cce2d2c7540fb155e464207f1be.tar.gz
vyos-1x-0cc2bbfc54370cce2d2c7540fb155e464207f1be.zip
Merge pull request #5130 from natali-rs1985/T8460
vpp: T8460: Use isolated cpus for VPP cpu-cores
Diffstat (limited to 'src/tests')
-rw-r--r--src/tests/test_utils.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/tests/test_utils.py b/src/tests/test_utils.py
index bbf1cb523..5022b24f6 100644
--- a/src/tests/test_utils.py
+++ b/src/tests/test_utils.py
@@ -48,3 +48,41 @@ class TestVyOSUtils(TestCase):
self.assertEqual(list_strip(lst, rsb, right=True), ['a', 'b', 'c'])
self.assertEqual(list_strip(lst, non), [])
self.assertEqual(list_strip(sub, lst), [])
+
+ def test_range_str_to_list(self):
+ from vyos.utils.convert import range_str_to_list
+
+ # basic cases
+ self.assertEqual(range_str_to_list('1-3'), [1, 2, 3])
+ self.assertEqual(range_str_to_list('1-3,5,7-8'), [1, 2, 3, 5, 7, 8])
+ self.assertEqual(range_str_to_list('3'), [3])
+ # empty string
+ self.assertEqual(range_str_to_list(''), [])
+ # unordered input
+ self.assertEqual(range_str_to_list('5,1-3,4'), [1, 2, 3, 4, 5])
+ self.assertEqual(range_str_to_list('7-9,1-3'), [1, 2, 3, 7, 8, 9])
+ # overlapping ranges
+ self.assertEqual(range_str_to_list('1-5,3-7'), [1, 2, 3, 4, 5, 6, 7])
+ self.assertEqual(range_str_to_list('1-3,2-4,3-5'), [1, 2, 3, 4, 5])
+ # duplicated values
+ self.assertEqual(range_str_to_list('1,1,2,2,3'), [1, 2, 3])
+ self.assertEqual(range_str_to_list('5,1-3,2,3'), [1, 2, 3, 5])
+ # adjacent ranges
+ self.assertEqual(range_str_to_list('1-3,4-6'), [1, 2, 3, 4, 5, 6])
+
+ def test_list_to_range_str(self):
+ from vyos.utils.convert import list_to_range_str
+
+ # basic cases
+ self.assertEqual(list_to_range_str([1, 2, 3]), '1-3')
+ self.assertEqual(list_to_range_str([1, 2, 3, 5, 7, 8]), '1-3,5,7-8')
+ self.assertEqual(list_to_range_str([1, 3]), '1,3')
+ self.assertEqual(list_to_range_str([3]), '3')
+ # empty list
+ self.assertEqual(list_to_range_str([]), '')
+ # unordered input
+ self.assertEqual(list_to_range_str([5, 1, 2, 3, 4]), '1-5')
+ self.assertEqual(list_to_range_str([7, 8, 9, 1, 2, 3]), '1-3,7-9')
+ # duplicated values
+ self.assertEqual(list_to_range_str([1, 1, 2, 2, 3, 3]), '1-3')
+ self.assertEqual(list_to_range_str([5, 1, 2, 2, 3, 5]), '1-3,5')