.build());
Set<Vm> vms = getAvailableVMsFromVAppTemplate(vAppTemplate);
// get the first vm to be added to vApp
Vm toAddVm = Iterables.get(vms, 0);
// TODO clean up network config of the vm
//cleanUpNetworkConnectionSection(toAddVm);
RecomposeVAppParams params = addRecomposeParams(composedVApp, toAddVm);
// The method under test
Task recomposeVApp = vAppApi.recompose(composedVApp.getId(), params);
assertTaskSucceedsLong(recomposeVApp);
// remove a vm
VApp configured = vAppApi.get(composedVApp.getId());
List<Vm> vmsToBeDeleted = configured.getChildren().getVms();
Vm toBeDeleted = Iterables.find(vmsToBeDeleted, new Predicate<Vm>() {
@Override
public boolean apply(Vm vm) {
return vm.getName().startsWith("vm-");
}
});
Task removeVm = vmApi.remove(toBeDeleted.getId());
assertTaskSucceedsLong(removeVm);
Task deleteVApp = vAppApi.remove(composedVApp.getHref());
assertTaskSucceedsLong(deleteVApp);
}