Remove powermock from vmware-base & vmware hypervisor plugin (#7798)

This commit is contained in:
Vishesh 2023-08-04 14:10:29 +05:30 committed by GitHub
parent 90443cdd43
commit 84974a1e08
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 131 additions and 135 deletions

View File

@ -25,6 +25,7 @@ import java.util.Map;
import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
@ -34,8 +35,7 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.Spy;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.mockito.junit.MockitoJUnitRunner;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.support.AnnotationConfigContextLoader;
@ -54,8 +54,7 @@ import com.cloud.utils.Pair;
import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachineManager;
@RunWith(PowerMockRunner.class)
@PrepareForTest({VMwareGuru.class})
@RunWith(MockitoJUnitRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class)
public class VMwareGuruTest {
@ -78,9 +77,16 @@ public class VMwareGuruTest {
@Mock
ClusterDetailsDao _clusterDetailsDao;
AutoCloseable closeable;
@Before
public void testSetUp() throws Exception {
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
}
@After
public void tearDown() throws Exception {
closeable.close();
}
@Test
@ -99,7 +105,6 @@ public class VMwareGuruTest {
HostVO hostVO = Mockito.mock(HostVO.class);
Mockito.when(localStorage.getId()).thenReturn(1L);
Mockito.when(vm.getId()).thenReturn(1L);
Mockito.when(_storagePoolDao.findById(1L)).thenReturn(storagePoolVO);
Mockito.when(rootVolume.getVolumeType()).thenReturn(Volume.Type.ROOT);
Mockito.when(dataVolume.getVolumeType()).thenReturn(Volume.Type.DATADISK);

View File

@ -23,7 +23,7 @@ import static org.mockito.Mockito.verify;
import java.util.HashMap;
import java.util.Map;
import org.apache.cloudstack.framework.config.ConfigKey;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@ -32,16 +32,14 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.Spy;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.mockito.junit.MockitoJUnitRunner;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.support.AnnotationConfigContextLoader;
import com.cloud.agent.api.to.VirtualMachineTO;
import com.cloud.vm.VmDetailConstants;
@RunWith(PowerMockRunner.class)
@PrepareForTest({ConfigKey.class, VmwareVmImplementer.class})
@RunWith(MockitoJUnitRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class)
public class VmwareVmImplementerTest {
@ -54,9 +52,16 @@ public class VmwareVmImplementerTest {
private Map<String,String> vmDetails = new HashMap<String, String>();
AutoCloseable closeable;
@Before
public void testSetUp() throws Exception {
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
}
@After
public void tearDown() throws Exception {
closeable.close();
}
private void setConfigValues(Boolean globalNV, Boolean globalNVPVM, String localNV){

View File

@ -80,12 +80,9 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Matchers;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
@ -104,11 +101,11 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(loader = AnnotationConfigContextLoader.class)
@PrepareForTest({ComponentContext.class, ApplicationContext.class})
public class VmwareDatacenterApiUnitTest {
@Inject
@ -166,11 +163,13 @@ public class VmwareDatacenterApiUnitTest {
@Mock
private static RemoveVmwareDcCmd removeCmd;
AutoCloseable closeable;
@Before
public void testSetUp() {
Mockito.when(_configDao.isPremium()).thenReturn(true);
ComponentContext.initComponentsLifeCycle();
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
DataCenterVO zone =
new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true,
@ -208,21 +207,21 @@ public class VmwareDatacenterApiUnitTest {
dcZoneMap = new VmwareDatacenterZoneMapVO(zoneId, vmwareDcId);
Mockito.when(_dcDao.persist(Matchers.any(DataCenterVO.class))).thenReturn(zone);
Mockito.when(_dcDao.persist(any(DataCenterVO.class))).thenReturn(zone);
Mockito.when(_dcDao.findById(1L)).thenReturn(zone);
Mockito.when(_podDao.persist(Matchers.any(HostPodVO.class))).thenReturn(pod);
Mockito.when(_podDao.persist(any(HostPodVO.class))).thenReturn(pod);
Mockito.when(_podDao.findById(1L)).thenReturn(pod);
Mockito.when(_clusterDao.persist(Matchers.any(ClusterVO.class))).thenReturn(cluster);
Mockito.when(_clusterDao.persist(any(ClusterVO.class))).thenReturn(cluster);
Mockito.when(_clusterDao.findById(1L)).thenReturn(cluster);
Mockito.when(_clusterDao.listByZoneId(1L)).thenReturn(null);
Mockito.when(_clusterDao.expunge(1L)).thenReturn(true);
Mockito.when(_clusterDetailsDao.persist(Matchers.any(ClusterDetailsVO.class))).thenReturn(clusterDetails);
Mockito.when(_clusterDetailsDao.persist(any(ClusterDetailsVO.class))).thenReturn(clusterDetails);
Mockito.when(_clusterDetailsDao.expunge(1L)).thenReturn(true);
Mockito.when(_vmwareDcDao.persist(Matchers.any(VmwareDatacenterVO.class))).thenReturn(dc);
Mockito.when(_vmwareDcDao.persist(any(VmwareDatacenterVO.class))).thenReturn(dc);
Mockito.when(_vmwareDcDao.findById(1L)).thenReturn(null);
Mockito.when(_vmwareDcDao.expunge(1L)).thenReturn(true);
Mockito.when(_vmwareDcDao.getVmwareDatacenterByNameAndVcenter(vmwareDcName, vCenterHost)).thenReturn(null);
Mockito.when(_vmwareDcZoneMapDao.persist(Matchers.any(VmwareDatacenterZoneMapVO.class))).thenReturn(dcZoneMap);
Mockito.when(_vmwareDcZoneMapDao.persist(any(VmwareDatacenterZoneMapVO.class))).thenReturn(dcZoneMap);
Mockito.when(_vmwareDcZoneMapDao.findByZoneId(1L)).thenReturn(null);
Mockito.when(_vmwareDcZoneMapDao.expunge(1L)).thenReturn(true);
Mockito.when(addCmd.getZoneId()).thenReturn(1L);
@ -234,8 +233,9 @@ public class VmwareDatacenterApiUnitTest {
}
@After
public void tearDown() {
public void tearDown() throws Exception {
CallContext.unregister();
closeable.close();
}
//@Test(expected = InvalidParameterValueException.class)

View File

@ -29,7 +29,7 @@ import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.Spy;
import org.mockito.runners.MockitoJUnitRunner;
import org.mockito.junit.MockitoJUnitRunner;
import com.cloud.dc.ClusterDetailsDao;
import com.cloud.dc.ClusterVO;
@ -112,8 +112,8 @@ public class VmwareManagerImplTest {
Assert.assertEquals(vmwareDatacenter.getUser(), updateVmwareDcCmd.getUsername());
Assert.assertEquals(vmwareDatacenter.getPassword(), updateVmwareDcCmd.getPassword());
Mockito.verify(clusterDetails, Mockito.times(2)).put(Mockito.anyString(), Mockito.anyString());
Mockito.verify(clusterDetailsDao, Mockito.times(1)).persist(Mockito.anyLong(), Mockito.anyMapOf(String.class, String.class));
Mockito.verify(clusterDetailsDao, Mockito.times(1)).persist(Mockito.anyLong(), Mockito.anyMap());
Mockito.verify(hostDetails, Mockito.times(3)).put(Mockito.anyString(), Mockito.anyString());
Mockito.verify(hostDetailsDao, Mockito.times(1)).persist(Mockito.anyLong(), Mockito.anyMapOf(String.class, String.class));
Mockito.verify(hostDetailsDao, Mockito.times(1)).persist(Mockito.anyLong(), Mockito.anyMap());
}
}

View File

@ -19,14 +19,13 @@ package com.cloud.hypervisor.vmware.resource;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.eq;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.powermock.api.mockito.PowerMockito.whenNew;
import java.util.ArrayList;
import java.util.Arrays;
@ -37,19 +36,18 @@ import java.util.Map;
import org.apache.cloudstack.storage.command.CopyCommand;
import org.apache.cloudstack.storage.to.PrimaryDataStoreTO;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InOrder;
import org.mockito.InjectMocks;
import org.mockito.Matchers;
import org.mockito.Mock;
import org.mockito.MockedConstruction;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.Spy;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.mockito.junit.MockitoJUnitRunner;
import com.cloud.agent.api.Answer;
import com.cloud.agent.api.Command;
@ -92,8 +90,7 @@ import com.vmware.vim25.VirtualDeviceConfigSpec;
import com.vmware.vim25.VirtualMachineConfigSpec;
import com.vmware.vim25.VirtualMachineVideoCard;
@RunWith(PowerMockRunner.class)
@PrepareForTest({CopyCommand.class})
@RunWith(MockitoJUnitRunner.class)
public class VmwareResourceTest {
private static final String VOLUME_PATH = "XXXXXXXXXXXX";
@ -187,10 +184,12 @@ public class VmwareResourceTest {
private Map<String,String> specsArray = new HashMap<String,String>();
AutoCloseable closeable;
@Before
public void setup() throws Exception {
MockitoAnnotations.initMocks(this);
storageCmd = PowerMockito.mock(CopyCommand.class);
closeable = MockitoAnnotations.openMocks(this);
storageCmd = Mockito.mock(CopyCommand.class);
doReturn(context).when(_resource).getServiceContext(null);
when(cmd.getVirtualMachine()).thenReturn(vmSpec);
@ -218,19 +217,17 @@ public class VmwareResourceTest {
when(hostCapability.isNestedHVSupported()).thenReturn(true);
}
@After
public void tearDown() throws Exception {
closeable.close();
}
//Test successful scaling up the vm
@Test
public void testScaleVMF1() throws Exception {
when(_resource.getHyperHost(context, null)).thenReturn(hyperHost);
doReturn("i-2-3-VM").when(cmd).getVmName();
when(hyperHost.findVmOnHyperHost("i-2-3-VM")).thenReturn(vmMo);
doReturn(536870912L).when(vmSpec).getMinRam();
doReturn(1).when(vmSpec).getCpus();
doReturn(1000).when(vmSpec).getMinSpeed();
doReturn(1000).when(vmSpec).getMaxSpeed();
doReturn(536870912L).when(vmSpec).getMaxRam();
doReturn(false).when(vmSpec).getLimitCpuUse();
when(vmMo.configureVm(vmConfigSpec)).thenReturn(true);
_resource.execute(cmd);
verify(_resource).execute(cmd);
@ -251,7 +248,7 @@ public class VmwareResourceTest {
final NicTO[] nics = new NicTO[] {nicTo1, nicTo2};
String macSequence = _resource.generateMacSequence(nics);
assertEquals(macSequence, "02:00:65:b5:00:03|01:23:45:67:89:AB");
assertEquals("02:00:65:b5:00:03|01:23:45:67:89:AB", macSequence);
}
@Test
@ -404,8 +401,8 @@ public class VmwareResourceTest {
@Test
public void checkStorageProcessorAndHandlerNfsVersionAttributeVersionNotSet(){
_resource.checkStorageProcessorAndHandlerNfsVersionAttribute(storageCmd);
verify(_resource).examineStorageSubSystemCommandNfsVersion(Matchers.eq(storageCmd), any(EnumMap.class));
verify(_resource).examineStorageSubSystemCommandFullCloneFlagForVmware(Matchers.eq(storageCmd), any(EnumMap.class));
verify(_resource).examineStorageSubSystemCommandNfsVersion(eq(storageCmd), any(EnumMap.class));
verify(_resource).examineStorageSubSystemCommandFullCloneFlagForVmware(eq(storageCmd), any(EnumMap.class));
verify(_resource).reconfigureProcessorByHandler(any(EnumMap.class));
assertEquals(NFS_VERSION, _resource.storageNfsVersion);
}
@ -415,24 +412,26 @@ public class VmwareResourceTest {
public void checkStorageProcessorAndHandlerNfsVersionAttributeVersionSet(){
_resource.storageNfsVersion = NFS_VERSION;
_resource.checkStorageProcessorAndHandlerNfsVersionAttribute(storageCmd);
verify(_resource, never()).examineStorageSubSystemCommandNfsVersion(Matchers.eq(storageCmd), any(EnumMap.class));
verify(_resource, never()).examineStorageSubSystemCommandNfsVersion(eq(storageCmd), any(EnumMap.class));
}
@Test(expected= CloudRuntimeException.class)
@Test(expected=CloudRuntimeException.class)
public void testFindVmOnDatacenterNullHyperHostReference() throws Exception {
when(hyperHost.getMor()).thenReturn(null);
_resource.findVmOnDatacenter(context, hyperHost, volume);
try (MockedConstruction<DatacenterMO> ignored = Mockito.mockConstruction(DatacenterMO.class)) {
_resource.findVmOnDatacenter(context, hyperHost, volume);
}
}
@Test
@PrepareForTest({DatacenterMO.class, VmwareResource.class})
public void testFindVmOnDatacenter() throws Exception {
when(hyperHost.getHyperHostDatacenter()).thenReturn(mor);
when(datacenter.getMor()).thenReturn(mor);
when(datacenter.findVm(VOLUME_PATH)).thenReturn(vmMo);
whenNew(DatacenterMO.class).withArguments(context, mor).thenReturn(datacenter);
VirtualMachineMO result = _resource.findVmOnDatacenter(context, hyperHost, volume);
assertEquals(vmMo, result);
try (MockedConstruction<DatacenterMO> ignored = Mockito.mockConstruction(DatacenterMO.class, (mock, context) -> {
when(mock.findVm(VOLUME_PATH)).thenReturn(vmMo);
when(mock.getMor()).thenReturn(mor);
})) {
VirtualMachineMO result = _resource.findVmOnDatacenter(context, hyperHost, volume);
assertEquals(vmMo, result);
}
}
@Test

View File

@ -18,8 +18,8 @@ package org.apache.cloudstack.storage.motion;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.anyLong;
import static org.mockito.Matchers.isA;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.isA;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

View File

@ -22,28 +22,24 @@ import com.cloud.hypervisor.vmware.util.VmwareContext;
import com.vmware.vim25.FileInfo;
import com.vmware.vim25.HostDatastoreBrowserSearchResults;
import com.vmware.vim25.ManagedObjectReference;
import com.vmware.vim25.VimPortType;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.mockito.MockedConstruction;
import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnitRunner;
import java.util.ArrayList;
import static org.junit.Assert.assertEquals;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.eq;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
/**
* Created by sudharma_jain on 6/13/17.
*/
@RunWith(PowerMockRunner.class)
@PrepareForTest(DatastoreMO.class)
@RunWith(MockitoJUnitRunner.class)
public class DatastoreMOTest {
@Mock
VmwareContext _context ;
@ -51,22 +47,20 @@ public class DatastoreMOTest {
VmwareClient _client;
@Mock
ManagedObjectReference _mor;
@Mock
HostDatastoreBrowserMO browserMo;
@Mock
VimPortType vimPortType;
DatastoreMO datastoreMO ;
String fileName = "ROOT-5.vmdk";
MockedConstruction<HostDatastoreBrowserMO> hostDataStoreBrowserMoConstruction;
@Before
public void setUp() throws Exception {
datastoreMO = new DatastoreMO(_context, _mor);
PowerMockito.whenNew(HostDatastoreBrowserMO.class).withAnyArguments().thenReturn(browserMo);
when(_context.getVimClient()).thenReturn(_client);
when(_client.getDynamicProperty(any(ManagedObjectReference.class), eq("name"))).thenReturn("252d36c96cfb32f48ce7756ccb79ae37");
when(_client.getDynamicProperty(any(ManagedObjectReference.class), eq("name"))).thenReturn(
"252d36c96cfb32f48ce7756ccb79ae37");
ArrayList<HostDatastoreBrowserSearchResults> results = new ArrayList<>();
@ -92,23 +86,28 @@ public class DatastoreMOTest {
results.add(r2);
results.add(r3);
when(browserMo.searchDatastore(any(String.class), any(String.class), eq(true))).thenReturn(null);
when(browserMo.searchDatastoreSubFolders(any(String.class),any(String.class), any(Boolean.class) )).thenReturn(results);
hostDataStoreBrowserMoConstruction = Mockito.mockConstruction(HostDatastoreBrowserMO.class, (mock, context) -> {
when(mock.searchDatastore(any(String.class), any(String.class), eq(true))).thenReturn(null);
when(mock.searchDatastoreSubFolders(any(String.class),any(String.class), any(Boolean.class) )).thenReturn(results);
});
}
@After
public void tearDown() throws Exception {
hostDataStoreBrowserMoConstruction.close();
}
@Test
public void testSearchFileInSubFolders() throws Exception {
assertEquals("Unexpected Behavior: search should exclude .snapshot folder", "[252d36c96cfb32f48ce7756ccb79ae37] i-2-5-VM/ROOT-5.vmdk", datastoreMO.searchFileInSubFolders(fileName, false, ".snapshot") );
assertEquals("Unexpected Behavior: search should exclude .snapshot folder",
"[252d36c96cfb32f48ce7756ccb79ae37] i-2-5-VM/ROOT-5.vmdk",
datastoreMO.searchFileInSubFolders(fileName, false, ".snapshot"));
}
@Test
public void testSearchFileInSubFoldersWithExcludeMultipleFolders() throws Exception {
assertEquals("Unexpected Behavior: search should exclude folders", datastoreMO.searchFileInSubFolders(fileName, false, "i-2-5-VM, .snapshot/hourly.2017-02-23_1705"), "[252d36c96cfb32f48ce7756ccb79ae37] .snapshot/hourly.2017-02-23_1605/i-2-5-VM/ROOT-5.vmdk" );
assertEquals("Unexpected Behavior: search should exclude folders",
"[252d36c96cfb32f48ce7756ccb79ae37] .snapshot/hourly.2017-02-23_1605/i-2-5-VM/ROOT-5.vmdk",
datastoreMO.searchFileInSubFolders(fileName, false, "i-2-5-VM, .snapshot/hourly.2017-02-23_1705"));
}
}

View File

@ -21,19 +21,16 @@ import com.cloud.hypervisor.vmware.util.VmwareClient;
import com.cloud.hypervisor.vmware.util.VmwareContext;
import com.vmware.vim25.GuestOsDescriptor;
import com.vmware.vim25.ManagedObjectReference;
import com.vmware.vim25.VimPortType;
import com.vmware.vim25.VirtualMachineConfigOption;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockedConstruction;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.mockito.junit.MockitoJUnitRunner;
import java.util.ArrayList;
import java.util.List;
@ -42,8 +39,7 @@ import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.when;
@RunWith(PowerMockRunner.class)
@PrepareForTest(HostMO.class)
@RunWith(MockitoJUnitRunner.class)
public class HostMOTest {
@Mock
@ -55,18 +51,17 @@ public class HostMOTest {
@Mock
ManagedObjectReference _environmentBrowser;
@Mock
VirtualMachineConfigOption vmConfigOption;
@Mock
GuestOsDescriptor guestOsDescriptor;
HostMO hostMO ;
ClusterMO clusterMO ;
AutoCloseable closeable;
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
hostMO = new HostMO(_context, _mor);
clusterMO = new ClusterMO(_context, _mor);
clusterMO._environmentBrowser = _environmentBrowser;
@ -77,37 +72,26 @@ public class HostMOTest {
@After
public void tearDown() throws Exception {
closeable.close();
}
@Test
public void testGetGuestOsDescriptors() throws Exception {
VimPortType vimPortType = PowerMockito.mock(VimPortType.class);
Mockito.when(_context.getService()).thenReturn(vimPortType);
Mockito.when(vimPortType.queryConfigOption(_environmentBrowser, null, null)).thenReturn(vmConfigOption);
PowerMockito.whenNew(ClusterMO.class).withArguments(_context, _mor).thenReturn(clusterMO);
List<GuestOsDescriptor> guestOsDescriptors = new ArrayList<>();
guestOsDescriptors.add(guestOsDescriptor);
Mockito.when(clusterMO.getGuestOsDescriptors()).thenReturn(guestOsDescriptors);
List<GuestOsDescriptor> result = hostMO.getGuestOsDescriptors();
Assert.assertEquals(guestOsDescriptor, result.get(0));
try (MockedConstruction<ClusterMO> ignored = Mockito.mockConstruction(ClusterMO.class,
(mock, context) -> when(mock.getGuestOsDescriptors()).thenReturn(guestOsDescriptors))) {
List<GuestOsDescriptor> result = hostMO.getGuestOsDescriptors();
Assert.assertEquals(guestOsDescriptor, result.get(0));
}
}
@Test
public void testGetGuestOsDescriptor() throws Exception {
VimPortType vimPortType = PowerMockito.mock(VimPortType.class);
Mockito.when(_context.getService()).thenReturn(vimPortType);
Mockito.when(vimPortType.queryConfigOption(_environmentBrowser, null, null)).thenReturn(vmConfigOption);
PowerMockito.whenNew(ClusterMO.class).withArguments(_context, _mor).thenReturn(clusterMO);
Mockito.when(guestOsDescriptor.getId()).thenReturn("1");
List<GuestOsDescriptor> guestOsDescriptors = new ArrayList<>();
guestOsDescriptors.add(guestOsDescriptor);
Mockito.when(vmConfigOption.getGuestOSDescriptor()).thenReturn(guestOsDescriptors);
GuestOsDescriptor result = hostMO.getGuestOsDescriptor("1");
Assert.assertEquals(guestOsDescriptor, result);
try (MockedConstruction<ClusterMO> ignored = Mockito.mockConstruction(ClusterMO.class,
(mock, context) -> when(mock.getGuestOsDescriptor(any(String.class))).thenReturn(guestOsDescriptor))) {
GuestOsDescriptor result = hostMO.getGuestOsDescriptor("1");
Assert.assertEquals(guestOsDescriptor, result);
}
}
}

View File

@ -20,10 +20,10 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyZeroInteractions;
import static org.mockito.Mockito.verifyNoInteractions;
import static org.mockito.Mockito.when;
import java.util.HashMap;
@ -85,9 +85,11 @@ public class HypervisorHostHelperTest {
String prefix;
String svlanId = null;
AutoCloseable closeable;
@Before
public void setup() throws Exception {
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
when(context.getServiceContent()).thenReturn(serviceContent);
when(serviceContent.getAbout()).thenReturn(aboutInfo);
when(clusterMO.getClusterConfigInfo()).thenReturn(clusterConfigInfo);
@ -102,12 +104,9 @@ public class HypervisorHostHelperTest {
public static void tearDownAfterClass() throws Exception {
}
@Before
public void setUp() throws Exception {
}
@After
public void tearDown() throws Exception {
closeable.close();
}
@Test
@ -129,8 +128,8 @@ public class HypervisorHostHelperTest {
@Test
public void testGetVcenterApiVersionWithNullContextObject() throws Exception {
assertNull(HypervisorHostHelper.getVcenterApiVersion(null));
verifyZeroInteractions(aboutInfo);
verifyZeroInteractions(serviceContent);
verifyNoInteractions(aboutInfo);
verifyNoInteractions(serviceContent);
}
@Test

View File

@ -35,13 +35,13 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.runners.MockitoJUnitRunner;
import org.mockito.junit.MockitoJUnitRunner;
import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.fail;
import static org.mockito.Matchers.any;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
@ -56,12 +56,14 @@ public class VirtualMachineMOTest {
VirtualMachineMO vmMo;
AutoCloseable closeable;
private List<VirtualDevice> getVirtualScSiDeviceList(Class<?> cls) {
List<VirtualDevice> deviceList = new ArrayList<>();
try {
VirtualSCSIController scsiController = (VirtualSCSIController)cls.newInstance();
VirtualSCSIController scsiController = (VirtualSCSIController)cls.getDeclaredConstructor().newInstance();
scsiController.setSharedBus(VirtualSCSISharing.NO_SHARING);
scsiController.setBusNumber(0);
scsiController.setKey(1);
@ -76,7 +78,7 @@ public class VirtualMachineMOTest {
@Before
public void setup() {
MockitoAnnotations.initMocks(this);
closeable = MockitoAnnotations.openMocks(this);
vmMo = new VirtualMachineMO(context, mor);
when(context.getVimClient()).thenReturn(client);
}
@ -89,12 +91,9 @@ public class VirtualMachineMOTest {
public static void tearDownAfterClass() throws Exception {
}
@Before
public void setUp() throws Exception {
}
@After
public void tearDown() throws Exception {
closeable.close();
}
@Test

View File

@ -26,7 +26,7 @@ import java.net.HttpURLConnection;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.runners.MockitoJUnitRunner;
import org.mockito.junit.MockitoJUnitRunner;
@RunWith(MockitoJUnitRunner.class)
public class VmwareContextTest {
@ -42,6 +42,9 @@ public class VmwareContextTest {
Mockito.doReturn(conn).when(vmwareContext).getHTTPConnection("http://example.com", "PUT");
//This method should not throw any exception. Ref: CLOUDSTACK-8669
vmwareContext.uploadResourceContent("http://example.com", "content".getBytes());
Mockito.verify(vmwareContext, Mockito.times(1)).getHTTPConnection("http://example.com", "PUT");
Mockito.verify(conn, Mockito.times(1)).getOutputStream();
Mockito.verify(conn, Mockito.times(1)).getInputStream();
}
}

View File

@ -18,6 +18,7 @@
package com.cloud.hypervisor.vmware.util;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import org.junit.Test;
import org.junit.runner.RunWith;
@ -37,7 +38,7 @@ public class VmwareHelperTest {
public void prepareDiskDeviceTestNotLimitingIOPS() throws Exception {
Mockito.when(virtualMachineMO.getIDEDeviceControllerKey()).thenReturn(1);
VirtualDisk virtualDisk = (VirtualDisk) VmwareHelper.prepareDiskDevice(virtualMachineMO, null, -1, new String[1], null, 0, 0, null);
assertEquals(null, virtualDisk.getStorageIOAllocation());
assertNull(virtualDisk.getStorageIOAllocation());
}
@Test
@ -51,6 +52,6 @@ public class VmwareHelperTest {
public void prepareDiskDeviceTestLimitingIOPSToZero() throws Exception {
Mockito.when(virtualMachineMO.getIDEDeviceControllerKey()).thenReturn(1);
VirtualDisk virtualDisk = (VirtualDisk) VmwareHelper.prepareDiskDevice(virtualMachineMO, null, -1, new String[1], null, 0, 0, Long.valueOf(0));
assertEquals(null, virtualDisk.getStorageIOAllocation());
assertNull(virtualDisk.getStorageIOAllocation());
}
}

View File

@ -0,0 +1 @@
mock-maker-inline