@Test public void testResize() { DiskImage oldDisk = createDiskImage(); when(diskDao.get(diskImageGuid)).thenReturn(oldDisk); UpdateVmDiskParameters parameters = createParameters(); ((DiskImage) parameters.getDiskInfo()).setSize(oldDisk.getSize() * 2); initializeCommand(parameters); assertTrue(command.validateCanResizeDisk()); }
@Test public void testFaultyResize() { when(diskDao.get(diskImageGuid)).thenReturn(createDiskImage()); UpdateVmDiskParameters parameters = createParameters(); ((DiskImage) parameters.getDiskInfo()).setSize(parameters.getDiskInfo().getSize() / 2); initializeCommand(parameters); assertFalse(command.validateCanResizeDisk()); CanDoActionTestUtils.assertCanDoActionMessages( "wrong failure", command, EngineMessage.ACTION_TYPE_FAILED_REQUESTED_DISK_SIZE_IS_TOO_SMALL); }
@Test public void testFailedRoDiskResize() { StorageDomain sd = new StorageDomain(); sd.setAvailableDiskSize(Integer.MAX_VALUE); sd.setStatus(StorageDomainStatus.Active); when(storageDomainDao.getForStoragePool(any(Guid.class), any(Guid.class))).thenReturn(sd); UpdateVmDiskParameters parameters = createParameters(); ((DiskImage) parameters.getDiskInfo()).setSize(parameters.getDiskInfo().getSize() * 2); initializeCommand(parameters); DiskImage oldDisk = createDiskImage(); doReturn(oldDisk).when(command).getOldDisk(); VmDevice vmDevice = stubVmDevice(diskImageGuid, vmId); vmDevice.setIsReadOnly(true); assertFalse(command.validateCanResizeDisk()); CanDoActionTestUtils.assertCanDoActionMessages( "wrong failure", command, EngineMessage.ACTION_TYPE_FAILED_CANNOT_RESIZE_READ_ONLY_DISK); }