def test_30_updateVMInfo(self, credentials, compute_client, network_client): radl_data = """ network net (outbound = 'yes') system test ( cpu.arch='x86_64' and cpu.count=1 and memory.size=512m and net_interface.0.connection = 'net' and net_interface.0.dns_name = 'test' and disk.0.os.name = 'linux' and disk.0.image.url = 'azr://Canonical/UbuntuServer/16.04.0-LTS/latest' and disk.0.os.credentials.username = '******' and disk.0.os.credentials.password = '******' )""" radl = radl_parse.parse_radl(radl_data) radl.check() auth = Authentication([{ 'id': 'azure', 'type': 'Azure', 'subscription_id': 'subscription_id', 'username': '******', 'password': '******' }]) azure_cloud = self.get_azure_cloud() inf = MagicMock() vm = VirtualMachine(inf, "rg0/im0", azure_cloud.cloud, radl, radl, azure_cloud, 1) instace_type = MagicMock() instace_type.name = "instance_type1" instace_type.number_of_cores = 1 instace_type.memory_in_mb = 1024 instace_type.resource_disk_size_in_mb = 102400 instace_types = [instace_type] cclient = MagicMock() compute_client.return_value = cclient cclient.virtual_machine_sizes.list.return_value = instace_types vm = MagicMock() vm.provisioning_state = "Succeeded" vm.hardware_profile.vm_size = "instance_type1" vm.location = "northeurope" ni = MagicMock() ni.id = "/subscriptions/subscription-id/resourceGroups/rg0/providers/Microsoft.Network/networkInterfaces/ni-0" vm.network_profile.network_interfaces = [ni] cclient.virtual_machines.get.return_value = vm nclient = MagicMock() network_client.return_value = nclient ni_res = MagicMock() ip_conf = MagicMock() ip_conf.private_ip_address = "10.0.0.1" ip_conf.public_ip_address.id = ( "/subscriptions/subscription-id/resourceGroups/rg0/" "providers/Microsoft.Network/networkInterfaces/ip-0") ni_res.ip_configurations = [ip_conf] nclient.network_interfaces.get.return_value = ni_res pub_ip_res = MagicMock() pub_ip_res.ip_address = "13.0.0.1" nclient.public_ip_addresses.get.return_value = pub_ip_res success, vm = azure_cloud.updateVMInfo(vm, auth) self.assertTrue(success, msg="ERROR: updating VM info.") self.assertNotIn("ERROR", self.log.getvalue(), msg="ERROR found in log: %s" % self.log.getvalue())