@Test public void testLocalStorageAllocator() { try { createDb(); StoragePoolVO pool = storagePoolDao.findById(storagePoolId); pool.setScope(ScopeType.HOST); storagePoolDao.update(pool.getId(), pool); DiskOfferingVO diskOff = diskOfferingDao.findById(diskOfferingId); diskOff.setUseLocalStorage(true); diskOfferingDao.update(diskOfferingId, diskOff); DiskProfile profile = new DiskProfile(volume, diskOff, HypervisorType.XenServer); VirtualMachineProfile vmProfile = Mockito.mock(VirtualMachineProfile.class); Mockito.when( storageMgr.storagePoolHasEnoughSpace( Mockito.anyListOf(Volume.class), Mockito.any(StoragePool.class))) .thenReturn(true); DeploymentPlan plan = new DataCenterDeployment(dcId, podId, clusterId, null, null, null); int foundAcct = 0; for (StoragePoolAllocator allocator : allocators) { List<StoragePool> pools = allocator.allocateToPool(profile, vmProfile, plan, new ExcludeList(), 1); if (!pools.isEmpty()) { Assert.assertEquals(pools.get(0).getId(), storage.getId()); foundAcct++; } } if (foundAcct > 1 || foundAcct == 0) { Assert.fail(); } } catch (Exception e) { cleanDb(); Assert.fail(); } }