def test_ip_address(self): """NETWORK RuntimeError is raised if both address and <ip> are specified.""" config = """<network> <forward mode="nat"/> <ip address="192.168.235.1" netmask="255.255.255.0"> <dhcp> <range start="192.168.235.2" end="192.168.235.128"/> </dhcp> </ip> </network> """ with self.assertRaises(RuntimeError): network.network_xml('foo', config, address=True)
def test_ip_modifies(self): """NETWORK Name and UUID are modified if existing.""" config = """<network> <name>bar</name> <uuid>bar</uuid> <bridge name="virbr-bar"/> <forward mode="nat"/> <ip address="192.168.235.1" netmask="255.255.255.0"> <dhcp> <range start="192.168.235.2" end="192.168.235.128"/> </dhcp> </ip> </network> """ expected = """<network> <name>foo</name> <uuid>foo</uuid> <bridge name="virbr-foo" /> <forward mode="nat" /> <ip address="192.168.235.1" netmask="255.255.255.0"> <dhcp> <range end="192.168.235.128" start="192.168.235.2" /> </dhcp> </ip> </network>""" results = network.network_xml('foo', config) self.assertEqual(results, expected, compare(results, expected))
def test_no_ip_address(self): """XML with address.""" config = """<network> <forward mode="nat"/> </network> """ expected = """<network> <forward mode="nat" /> <name>foo</name><uuid>foo</uuid><bridge name="virbr-foo" />""" + \ """<ip address="192.168.1.1" netmask="255.255.255.0">""" + \ """<dhcp><range end="192.168.1.128" start="192.168.1.2" /></dhcp></ip></network>""" results = network.network_xml('foo', config, address='192.168.1.1') self.assertEqual(results, expected, compare(results, expected))
def test_ip(self): """NETWORK XML with given IP.""" config = """<network> <forward mode="nat"/> <ip address="192.168.235.1" netmask="255.255.255.0"> <dhcp> <range start="192.168.235.2" end="192.168.235.128"/> </dhcp> </ip> </network> """ expected = """<network> <forward mode="nat" /> <ip address="192.168.235.1" netmask="255.255.255.0"> <dhcp> <range end="192.168.235.128" start="192.168.235.2" /> </dhcp> </ip> <name>foo</name><uuid>foo</uuid><bridge name="virbr-foo" /></network>""" results = network.network_xml('foo', config) self.assertEqual(results, expected, compare(results, expected))