Add get_bvis() plus unittest

This commit is contained in:
Pim van Pelt
2022-03-26 22:45:52 +00:00
parent a2d2476710
commit 084094bb27
2 changed files with 18 additions and 0 deletions

View File

@ -16,6 +16,17 @@ import config.interface as interface
import config.lcp as lcp import config.lcp as lcp
import config.address as address import config.address as address
def get_bvis(yaml):
""" Return a list of all bridgedomains which have an LCP (ie bvi*). """
ret = []
if not 'bridgedomains' in yaml:
return ret
for ifname, iface in yaml['bridgedomains'].items():
if 'lcp' in iface:
instance = int(ifname[2:])
ret.append("bvi%d" % instance)
return ret
def get_bridgedomains(yaml): def get_bridgedomains(yaml):
""" Return a list of all bridgedomains. """ """ Return a list of all bridgedomains. """
ret = [] ret = []

View File

@ -74,3 +74,10 @@ class TestBridgeDomainMethods(unittest.TestCase):
def test_get_bridgedomains(self): def test_get_bridgedomains(self):
ifs = bridgedomain.get_bridgedomains(self.cfg) ifs = bridgedomain.get_bridgedomains(self.cfg)
self.assertEqual(len(ifs), 3) self.assertEqual(len(ifs), 3)
def test_get_bvis(self):
ifs = bridgedomain.get_bvis(self.cfg)
self.assertEqual(len(ifs), 2)
self.assertNotIn("bvi10", ifs)
self.assertIn("bvi11", ifs)
self.assertIn("bvi12", ifs)