예제 #1
0
 def test_create_port_exc(self):
     vm_id = fake_vmware_api.Constants.VM_UUID
     vlan = model.Vlan(vlan_ids=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(name="net-1234",
                             network_type=p_const.TYPE_VLAN,
                             config=network_config)
     net_id = "net"
     port = model.Port(name=None,
                       mac_address=None,
                       ipaddresses=None,
                       vm_id=vm_id)
     virtual_nic = model.VirtualNic(mac_address=None,
                                    port_uuid=None,
                                    vm_id=vm_id,
                                    vm_name=None,
                                    nic_type=None,
                                    pg_id=None)
     with mock.patch.object(self.vc_driver,
                            "is_valid_switch",
                            return_value=None):
         exc = self.assertRaises(error.VcenterConfigurationError,
                                 self.vc_driver.create_port, network,
                                 net_id, port, virtual_nic)
         self.assertIn("Invalid Switch", str(exc))
예제 #2
0
 def test_create_port_invalid_cluster(self):
     vm_id = fake_vmware_api.Constants.VM_UUID
     vlan = model.Vlan(vlan_ids=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(name="net-1234",
                             network_type=p_const.TYPE_VLAN,
                             config=network_config)
     net_id = "net"
     port = model.Port(name=None,
                       mac_address=None,
                       ipaddresses=None,
                       vm_id=vm_id)
     virtual_nic = model.VirtualNic(mac_address=None,
                                    port_uuid=None,
                                    vm_id=vm_id,
                                    vm_name=None,
                                    nic_type=None,
                                    pg_id=None)
     cluster_mor = fake_vmware_api.DataObject()
     cluster_mor.value = "invalid_id"
     cache.VCCache.add_cluster_mor_for_vm(vm_id, cluster_mor)
     exc = self.assertRaises(error.VcenterConfigurationError,
                             self.vc_driver.create_port, network, net_id,
                             port, virtual_nic)
     self.assertIn("Cluster for VM %s could not be determined" % vm_id,
                   str(exc))
예제 #3
0
 def test_model_network(self):
     key = "1-2-3"
     name = "net1"
     network_type = constants.NETWORK_VLAN
     vs_name = "dvs1"
     port_name = "port1"
     vlanIds = [1001]
     operation_mode = "mode1"
     vlan_type = "Native"
     vlan = model.Vlan(vlanIds, operation_mode, vlan_type)
     config = model.NetworkConfig(vlan)
     vs = model.VirtualSwitch(vs_name)
     port = model.Port(port_name, None, None, None, None)
     network = model.Network(name, network_type, config, [vs], [port], key)
     self.assertFalse(network.uuid is None, "Network uuid is none")
     self.assertEqual(network.key, key, "Network key does not match")
     self.assertEqual(network.name, name, "Network name does not match")
     self.assertEqual(network.network_type, network_type,
                      "Network network_type does not match")
     self.assertTrue(network.config is not None)
     self.assertTrue(network.config.vlan is not None)
     self.assertEqual(network.config.vlan.operation_mode, operation_mode)
     self.assertEqual(network.config.vlan.vlan_type, vlan_type)
     self.assertEqual(len(network.config.vlan.vlanIds), 1)
     self.assertEqual(network.config.vlan.vlanIds[0], vlanIds[0])
     self.assertEqual(len(network.vswitches), 1)
     self.assertEqual(network.vswitches[0].name, vs_name)
     self.assertEqual(len(network.ports), 1)
     self.assertEqual(network.ports[0].name, port_name)
예제 #4
0
 def test_create_network(self):
     vlan = model.Vlan(vlan_ids=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(
         name="net-1234", network_type=p_const.TYPE_VLAN,
         config=network_config)
     vswitch = model.VirtualSwitch("test_dvs", hosts=None)
     with mock.patch.object(network_util, "get_portgroup_mor_by_name",
                            return_value=None):
         self.vc_driver.create_network(network, vswitch)
         self.assertTrue(fake_vmware_api.is_task_done(
             "AddDVPortgroup_Task"))
예제 #5
0
 def test_update_port_up(self):
     port_id = "PORT-1234-5678"
     vm_id = fake_vmware_api.Constants.VM_UUID
     mac_address = fake_vmware_api.Constants.VM_MAC
     vlan = model.Vlan(vlan_ids=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(name="net-1234",
                             network_type=p_const.TYPE_VLAN,
                             config=network_config)
     port = model.Port(uuid=port_id,
                       name=None,
                       mac_address=mac_address,
                       ipaddresses=None,
                       vm_id=vm_id,
                       port_status=constants.PORT_STATUS_UP)
     self.vc_driver.update_port(network, port, None)
     self.assertTrue(fake_vmware_api.is_task_done("ReconfigureDVPort_Task"))
예제 #6
0
 def test_update_port_invalid_status(self):
     port_id = "PORT-1234-5678"
     vm_id = fake_vmware_api.Constants.VM_UUID
     mac_address = fake_vmware_api.Constants.VM_MAC
     vlan = model.Vlan(vlan_ids=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(name="net-1234",
                             network_type=p_const.TYPE_VLAN,
                             config=network_config)
     port = model.Port(uuid=port_id,
                       name=None,
                       mac_address=mac_address,
                       ipaddresses=None,
                       vm_id=vm_id,
                       port_status="Invalid")
     self.assertRaises(error.OVSvAppNeutronAgentError,
                       self.vc_driver.update_port, network, port, None)
예제 #7
0
 def test_model_virtualswitch(self):
     key = "1-2-3"
     name = "dvs1"
     pnic_name = "eth0"
     net_name = "net1"
     pnic = model.PhysicalNic(name="eth0", mac_address=None, config=None)
     network = model.Network(name=net_name, network_type=None)
     dvs = model.VirtualSwitch(name,
                               pnics=[pnic],
                               networks=[network],
                               key=key)
     self.assertFalse(dvs.uuid is None, "DVS uuid is none")
     self.assertEqual(dvs.key, key, "DVS key does not match")
     self.assertEqual(dvs.name, name, "DVS name does not match")
     self.assertEqual(len(dvs.pnics), 1)
     self.assertEqual(dvs.pnics[0].name, pnic_name)
     self.assertEqual(len(dvs.networks), 1)
     self.assertEqual(dvs.networks[0].name, net_name)
예제 #8
0
 def test_create_port(self):
     vm_id = fake_vmware_api.Constants.VM_UUID
     vlan = model.Vlan(vlanIds=["1001"])
     network_config = model.NetworkConfig(vlan)
     network = model.Network(name="net-1234",
                             network_type=constants.NETWORK_VLAN,
                             config=network_config)
     port = model.Port(name=None,
                       mac_address=None,
                       ipaddresses=None,
                       vm_id=vm_id)
     virtual_nic = model.VirtualNic(mac_address=None,
                                    port_uuid=None,
                                    vm_id=vm_id,
                                    vm_name=None,
                                    nic_type=None)
     with mock.patch.object(model, "VirtualSwitch") as vswitch:
         self.vc_driver.create_port(network, port, virtual_nic)
         self.assertTrue(vswitch.called)
 def test_delete_network(self):
     pg_name = fake_vmware_api.Constants.PORTGROUP_NAME
     network = model.Network(
         name=pg_name, network_type=p_const.TYPE_VLAN)
     vswitch = model.VirtualSwitch("test_dvs", hosts=None)
     self.assertFalse(self.vc_driver.delete_network(network, vswitch))