@BeforeMethod public void setUp() throws Throwable { commonHostAndClientSetup(basicServiceHost, apiFeDcpRestClient); commonDataSetup( tenantDcpBackend, resourceTicketDcpBackend, projectDcpBackend, flavorDcpBackend, flavorLoader); vm = new VmService.State(); vm.name = UUID.randomUUID().toString(); flavorEntity = flavorDcpBackend.getEntityByNameAndKind("core-100", Vm.KIND); vm.flavorId = flavorEntity.getId(); vm.imageId = UUID.randomUUID().toString(); vm.projectId = projectId; vm.vmState = VmState.CREATING; vm.affinities = new ArrayList<>(); vm.affinities.add(new LocalitySpec("id1", "kind1")); Iso iso = new Iso(); iso.setName(UUID.randomUUID().toString()); iso.setSize(-1L); vm.isos = new ArrayList<>(); vm.isos.add(iso); vm.metadata = new HashMap<>(); vm.metadata.put("key1", UUID.randomUUID().toString()); vm.networks = new ArrayList<>(); vm.networks.add(UUID.randomUUID().toString()); vm.agent = UUID.randomUUID().toString(); vm.host = UUID.randomUUID().toString(); vm.datastore = UUID.randomUUID().toString(); vm.datastoreName = UUID.randomUUID().toString(); vm.tags = new HashSet<>(); vm.tags.add("namespace1:predicate1=value1"); vm.tags.add("namespace2:predicate2=value2"); Operation result = dcpClient.post(VmServiceFactory.SELF_LINK, vm); createdVm = result.getBody(VmService.State.class); vmId = ServiceUtils.getIDFromDocumentSelfLink(createdVm.documentSelfLink); DeploymentCreateSpec deploymentCreateSpec = new DeploymentCreateSpec(); deploymentCreateSpec.setImageDatastores(Collections.singleton(UUID.randomUUID().toString())); TaskEntity deploymentTask = deploymentBackend.prepareCreateDeployment(deploymentCreateSpec); HostCreateSpec hostCreateSpec = new HostCreateSpec(); hostCreateSpec.setAddress(vm.host); hostCreateSpec.setUsageTags(ImmutableList.of(UsageTag.CLOUD)); hostCreateSpec.setUsername(UUID.randomUUID().toString()); hostCreateSpec.setPassword(UUID.randomUUID().toString()); TaskEntity hostTask = hostBackend.prepareHostCreate(hostCreateSpec, deploymentTask.getEntityId()); hostId = hostTask.getEntityId(); }
@Test public void testToApiRepresentation() throws ExternalException { Vm foundVm = vmDcpBackend.toApiRepresentation(vmId); assertThat(foundVm.getName(), is(vm.name)); assertThat(foundVm.getFlavor(), is(flavorEntity.getName())); assertThat(foundVm.getSourceImageId(), is(vm.imageId)); assertThat(foundVm.getState(), is(vm.vmState)); assertThat(foundVm.getAttachedIsos().get(0).getName(), is(vm.isos.get(0).getName())); assertThat(foundVm.getAttachedIsos().get(0).getSize(), is(vm.isos.get(0).getSize())); assertThat(foundVm.getMetadata().get("key1"), is(vm.metadata.get("key1"))); assertThat(foundVm.getTags().containsAll(vm.tags), is(true)); assertThat(foundVm.getHost(), is(vm.host)); assertThat(foundVm.getDatastore(), is(vm.datastore)); assertThat(foundVm.getProjectId(), is(vm.projectId)); }