get_dns via guest network returns blank dns servers

fixed and added unit test
This commit is contained in:
Ian Southam 2015-01-19 17:25:17 +01:00 committed by wilderrodrigues
parent 84ba06b87d
commit fb094ecafd
2 changed files with 21 additions and 1 deletions

View File

@ -36,7 +36,16 @@ class CsGuestNetwork:
return self.guest
def get_dns(self):
if not self.guest:
return self.config.get_dns()
# Can a router provide dhcp but not dns?
return [ self.data['router_guest_gateway'] ] + self.data['dns'].split(',')
def set_dns(self, val):
self.data['dns'] = val
def set_router(self, val):
self.data['router_guest_gateway'] = val
def get_netmask(self):
#We need to fix it properly. I just added the if, as Ian did in some other files, to avoid the exception.

View File

@ -12,5 +12,16 @@ class TestCsGuestNetwork(unittest.TestCase):
csguestnetwork = CsGuestNetwork({}, {})
self.assertTrue(csguestnetwork is not None)
def test_get_dns(self):
csguestnetwork = CsGuestNetwork({}, {})
csguestnetwork.guest = True
csguestnetwork.set_dns("1.1.1.1,2.2.2.2")
csguestnetwork.set_router("3.3.3.3")
dns = csguestnetwork.get_dns()
self.assertTrue(len(dns) == 3)
csguestnetwork.set_dns("1.1.1.1")
dns = csguestnetwork.get_dns()
self.assertTrue(len(dns) == 2)
if __name__ == '__main__':
unittest.main()