fix(monitor): preserve an OVS VLAN tag of zero

This commit is contained in:
Jonatan Castro
2026-11-04 02:46:58 +01:00
parent 2fd55f8c88
commit 76696a5271
2 changed files with 6 additions and 1 deletions
+1 -1
View File
@@ -31,7 +31,7 @@ def _rows(table):
def _list(value):
return value if isinstance(value, list) else [value] if value else []
return value if isinstance(value, list) else [] if value is None or value == '' else [value]
def parse_topology(bridges, ports, interfaces):
@@ -64,6 +64,11 @@ class OvsTopology(unittest.TestCase):
self.assertIsNone(data['bonds']['uplink']['bond_active_slave'])
self.assertEqual(data['ports']['eno2']['bond_master'], 'uplink')
def test_zero_vlan_tag_is_preserved(self):
tables = fixture()
tables[1]['data'][3][4] = 0
self.assertEqual(ovs.parse_topology(*tables)['ports']['vlan100']['ovs_tag'], 0)
def test_no_ovs_does_not_spawn_any_process(self):
with patch.object(ovs.shutil, 'which', return_value=None), patch.object(ovs.subprocess, 'run') as run:
self.assertEqual(ovs.get_topology(), {})