Update Mockito to 5.16.1 (#10686)

Dependency name change mockito-inline to mockito-core. Inline is now the default and the last version of mockito-inline released is 5.2.0.

assertj-core in user-authenticators/saml2 pulls in an incompatible version of byte-buddy and required an exclusion. Updating the version of assertj is left for a future PR.
The upgrade requires Java 11+, dropping support for Java 8. CloudStack documentation already says to use Java 11 and does not indicate that java 8 is supported.

Test classes using @RunWith(MockitoJUnitRunner.class) now get run in strict mode. Changes were made to tests where the stubbing intention was clear. In ManagementServerMaintenanceManagerImplTest there are 5 tests where the intention of the test is unclear. Each of the statements now use Mockito.lenient() to avoid the exception. Other cases in the tests follow a similar pattern.
Minor clean up.

Both @Spy and Mockito.spy( should not be used. Favored the annotation.
Both @RunWith(MockitoJUnitRunner.class) and MockitoAnnotations.openMocks(this); should not be used. Favored the annotation.
Unnecessary extends TestCase removed.
@InjectMocks and new in statement unnecessary. Removed new when issue presented.
Some of the Cmd classes like UpdateNetworkCmd have a type tree that includes fields of type Object. This appears to cause issues with injection, requiring that @Mock fields be available. This is where the following fields were added in multiple places:
Object job;
ResponseGenerator _responseGenerator;
Wrong number of parameters for Mockito.when in LibvirtRevertSnapshotCommandWrapperTest.java
This commit is contained in:
Eric Kalendra 2025-04-16 05:40:28 -07:00 committed by GitHub
parent 41e881ea01
commit 55c811547a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
24 changed files with 90 additions and 87 deletions

View File

@ -44,7 +44,7 @@ public class PurgeExpungedResourcesCmdTest {
@Spy @Spy
@InjectMocks @InjectMocks
PurgeExpungedResourcesCmd spyCmd = Mockito.spy(new PurgeExpungedResourcesCmd()); PurgeExpungedResourcesCmd spyCmd;
@Test @Test
public void testGetResourceType() { public void testGetResourceType() {

View File

@ -20,14 +20,11 @@ package org.apache.cloudstack.api.command.admin.storage;
import com.cloud.utils.Pair; import com.cloud.utils.Pair;
import org.apache.cloudstack.api.response.ExtractResponse; import org.apache.cloudstack.api.response.ExtractResponse;
import org.apache.cloudstack.storage.browser.StorageBrowser; import org.apache.cloudstack.storage.browser.StorageBrowser;
import org.junit.After;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.mockito.InjectMocks; import org.mockito.InjectMocks;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.Spy; import org.mockito.Spy;
import org.mockito.junit.MockitoJUnitRunner; import org.mockito.junit.MockitoJUnitRunner;
import org.springframework.test.util.ReflectionTestUtils; import org.springframework.test.util.ReflectionTestUtils;
@ -48,18 +45,6 @@ public class DownloadImageStoreObjectCmdTest {
@Spy @Spy
private DownloadImageStoreObjectCmd cmd; private DownloadImageStoreObjectCmd cmd;
private AutoCloseable closeable;
@Before
public void setUp() {
closeable = MockitoAnnotations.openMocks(this);
}
@After
public void tearDown() throws Exception {
closeable.close();
}
@Test @Test
public void testExecute() throws Exception { public void testExecute() throws Exception {
ReflectionTestUtils.setField(cmd, "storeId", 1L); ReflectionTestUtils.setField(cmd, "storeId", 1L);

View File

@ -68,6 +68,12 @@ public class MigrateVirtualMachineWithVolumeCmdTest {
@Mock @Mock
Host hostMock; Host hostMock;
@Mock
private Object job;
@Mock
private Object _responseObject;
@Spy @Spy
@InjectMocks @InjectMocks
MigrateVirtualMachineWithVolumeCmd cmdSpy; MigrateVirtualMachineWithVolumeCmd cmdSpy;

View File

@ -20,7 +20,6 @@ package org.apache.cloudstack.api.command.admin.vpc;
import com.cloud.network.vpc.VpcService; import com.cloud.network.vpc.VpcService;
import com.cloud.user.AccountService; import com.cloud.user.AccountService;
import com.cloud.utils.db.EntityManager; import com.cloud.utils.db.EntityManager;
import junit.framework.TestCase;
import org.apache.cloudstack.api.ResponseGenerator; import org.apache.cloudstack.api.ResponseGenerator;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
@ -34,7 +33,7 @@ import org.springframework.test.util.ReflectionTestUtils;
import java.util.List; import java.util.List;
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class CreateVPCCmdByAdminTest extends TestCase { public class CreateVPCCmdByAdminTest {
@Mock @Mock
public VpcService _vpcService; public VpcService _vpcService;
@ -43,8 +42,10 @@ public class CreateVPCCmdByAdminTest extends TestCase {
@Mock @Mock
public AccountService _accountService; public AccountService _accountService;
private ResponseGenerator responseGenerator; private ResponseGenerator responseGenerator;
@Mock
public Object job;
@InjectMocks @InjectMocks
CreateVPCCmdByAdmin cmd = new CreateVPCCmdByAdmin(); CreateVPCCmdByAdmin cmd;
@Test @Test
public void testBgpPeerIds() { public void testBgpPeerIds() {

View File

@ -41,7 +41,10 @@ public class UpdateNetworkCmdTest {
NetworkService networkService; NetworkService networkService;
@Mock @Mock
public EntityManager _entityMgr; public EntityManager _entityMgr;
private ResponseGenerator responseGenerator; @Mock
private ResponseGenerator _responseGenerator;
@Mock
private Object job;
@InjectMocks @InjectMocks
UpdateNetworkCmd cmd = new UpdateNetworkCmd(); UpdateNetworkCmd cmd = new UpdateNetworkCmd();
@ -176,15 +179,13 @@ public class UpdateNetworkCmdTest {
ReflectionTestUtils.setField(cmd, "id", networkId); ReflectionTestUtils.setField(cmd, "id", networkId);
ReflectionTestUtils.setField(cmd, "publicMtu", publicmtu); ReflectionTestUtils.setField(cmd, "publicMtu", publicmtu);
Network network = Mockito.mock(Network.class); Network network = Mockito.mock(Network.class);
responseGenerator = Mockito.mock(ResponseGenerator.class);
NetworkResponse response = Mockito.mock(NetworkResponse.class); NetworkResponse response = Mockito.mock(NetworkResponse.class);
response.setPublicMtu(publicmtu); response.setPublicMtu(publicmtu);
Mockito.when(networkService.getNetwork(networkId)).thenReturn(network); Mockito.when(networkService.getNetwork(networkId)).thenReturn(network);
Mockito.when(networkService.updateGuestNetwork(cmd)).thenReturn(network); Mockito.when(networkService.updateGuestNetwork(cmd)).thenReturn(network);
cmd._responseGenerator = responseGenerator; Mockito.when(_responseGenerator.createNetworkResponse(ResponseObject.ResponseView.Restricted, network)).thenReturn(response);
Mockito.when(responseGenerator.createNetworkResponse(ResponseObject.ResponseView.Restricted, network)).thenReturn(response);
cmd.execute(); cmd.execute();
Mockito.verify(responseGenerator).createNetworkResponse(Mockito.any(ResponseObject.ResponseView.class), Mockito.any(Network.class)); Mockito.verify(_responseGenerator).createNetworkResponse(Mockito.any(ResponseObject.ResponseView.class), Mockito.any(Network.class));
NetworkResponse actualResponse = (NetworkResponse) cmd.getResponseObject(); NetworkResponse actualResponse = (NetworkResponse) cmd.getResponseObject();
Assert.assertEquals(response, actualResponse); Assert.assertEquals(response, actualResponse);

View File

@ -25,7 +25,6 @@ import com.cloud.network.vpc.Vpc;
import com.cloud.network.vpc.VpcService; import com.cloud.network.vpc.VpcService;
import com.cloud.user.AccountService; import com.cloud.user.AccountService;
import com.cloud.utils.db.EntityManager; import com.cloud.utils.db.EntityManager;
import junit.framework.TestCase;
import org.apache.cloudstack.api.ResponseGenerator; import org.apache.cloudstack.api.ResponseGenerator;
import org.apache.cloudstack.api.ResponseObject; import org.apache.cloudstack.api.ResponseObject;
import org.apache.cloudstack.api.response.VpcResponse; import org.apache.cloudstack.api.response.VpcResponse;
@ -39,7 +38,7 @@ import org.mockito.junit.MockitoJUnitRunner;
import org.springframework.test.util.ReflectionTestUtils; import org.springframework.test.util.ReflectionTestUtils;
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class CreateVPCCmdTest extends TestCase { public class CreateVPCCmdTest {
@Mock @Mock
public VpcService _vpcService; public VpcService _vpcService;
@ -47,9 +46,13 @@ public class CreateVPCCmdTest extends TestCase {
public EntityManager _entityMgr; public EntityManager _entityMgr;
@Mock @Mock
public AccountService _accountService; public AccountService _accountService;
private ResponseGenerator responseGenerator; @Mock
private ResponseGenerator _responseGenerator;
@Mock
private Object job;
@InjectMocks @InjectMocks
CreateVPCCmd cmd = new CreateVPCCmd(); CreateVPCCmd cmd;
@Test @Test
public void testGetAccountName() { public void testGetAccountName() {
@ -185,11 +188,9 @@ public class CreateVPCCmdTest extends TestCase {
VpcResponse response = Mockito.mock(VpcResponse.class); VpcResponse response = Mockito.mock(VpcResponse.class);
ReflectionTestUtils.setField(cmd, "id", 1L); ReflectionTestUtils.setField(cmd, "id", 1L);
responseGenerator = Mockito.mock(ResponseGenerator.class);
Mockito.doNothing().when(_vpcService).startVpc(cmd); Mockito.doNothing().when(_vpcService).startVpc(cmd);
Mockito.when(_entityMgr.findById(Mockito.eq(Vpc.class), Mockito.any(Long.class))).thenReturn(vpc); Mockito.when(_entityMgr.findById(Mockito.eq(Vpc.class), Mockito.any(Long.class))).thenReturn(vpc);
cmd._responseGenerator = responseGenerator; Mockito.when(_responseGenerator.createVpcResponse(ResponseObject.ResponseView.Restricted, vpc)).thenReturn(response);
Mockito.when(responseGenerator.createVpcResponse(ResponseObject.ResponseView.Restricted, vpc)).thenReturn(response);
cmd.execute(); cmd.execute();
Mockito.verify(_vpcService, Mockito.times(1)).startVpc(cmd); Mockito.verify(_vpcService, Mockito.times(1)).startVpc(cmd);
} }

View File

@ -704,7 +704,7 @@ public class LibvirtMigrateCommandWrapperTest {
@Test @Test
public void deleteOrDisconnectDisksOnSourcePoolTest() { public void deleteOrDisconnectDisksOnSourcePoolTest() {
LibvirtMigrateCommandWrapper spyLibvirtMigrateCmdWrapper = Mockito.spy(libvirtMigrateCmdWrapper); LibvirtMigrateCommandWrapper spyLibvirtMigrateCmdWrapper = libvirtMigrateCmdWrapper;
Mockito.doNothing().when(spyLibvirtMigrateCmdWrapper).deleteLocalVolume("volPath"); Mockito.doNothing().when(spyLibvirtMigrateCmdWrapper).deleteLocalVolume("volPath");
List<MigrateDiskInfo> migrateDiskInfoList = new ArrayList<>(); List<MigrateDiskInfo> migrateDiskInfoList = new ArrayList<>();

View File

@ -32,6 +32,7 @@ import org.junit.runner.RunWith;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockedStatic; import org.mockito.MockedStatic;
import org.mockito.Mockito; import org.mockito.Mockito;
import org.mockito.Spy;
import org.mockito.junit.MockitoJUnitRunner; import org.mockito.junit.MockitoJUnitRunner;
import com.cloud.agent.api.to.DataStoreTO; import com.cloud.agent.api.to.DataStoreTO;
@ -42,7 +43,8 @@ import com.cloud.utils.exception.CloudRuntimeException;
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class LibvirtRevertSnapshotCommandWrapperTest { public class LibvirtRevertSnapshotCommandWrapperTest {
LibvirtRevertSnapshotCommandWrapper libvirtRevertSnapshotCommandWrapperSpy = Mockito.spy(LibvirtRevertSnapshotCommandWrapper.class); @Spy
LibvirtRevertSnapshotCommandWrapper libvirtRevertSnapshotCommandWrapperSpy;
@Mock @Mock
KVMStoragePool kvmStoragePoolPrimaryMock; KVMStoragePool kvmStoragePoolPrimaryMock;
@ -107,7 +109,7 @@ public class LibvirtRevertSnapshotCommandWrapperTest {
Mockito.doReturn(snapshotPath).when(snapshotObjectToPrimaryMock).getPath(); Mockito.doReturn(snapshotPath).when(snapshotObjectToPrimaryMock).getPath();
try (MockedStatic<Files> ignored = Mockito.mockStatic(Files.class)) { try (MockedStatic<Files> ignored = Mockito.mockStatic(Files.class)) {
Mockito.when(Files.exists(Mockito.any(Path.class), Mockito.any())).thenReturn(true); Mockito.when(Files.exists(Mockito.any(Path.class))).thenReturn(true);
Pair<String, SnapshotObjectTO> result = libvirtRevertSnapshotCommandWrapperSpy.getSnapshot( Pair<String, SnapshotObjectTO> result = libvirtRevertSnapshotCommandWrapperSpy.getSnapshot(
snapshotObjectToPrimaryMock, snapshotObjectToSecondaryMock, snapshotObjectToPrimaryMock, snapshotObjectToSecondaryMock,

View File

@ -69,6 +69,8 @@ public class VmwareManagerImplTest {
private Map<String, String> clusterDetails; private Map<String, String> clusterDetails;
@Mock @Mock
private Map<String, String> hostDetails; private Map<String, String> hostDetails;
@Mock
private Map<String, Object> _configParams;
@Before @Before
public void beforeTest() { public void beforeTest() {

View File

@ -41,6 +41,8 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.cloud.agent.api.Command;
import com.cloud.agent.api.ScaleVmAnswer;
import com.cloud.hypervisor.vmware.mo.DatastoreMO; import com.cloud.hypervisor.vmware.mo.DatastoreMO;
import com.cloud.hypervisor.vmware.mo.HostDatastoreBrowserMO; import com.cloud.hypervisor.vmware.mo.HostDatastoreBrowserMO;
import com.cloud.hypervisor.vmware.mo.HypervisorHostHelper; import com.cloud.hypervisor.vmware.mo.HypervisorHostHelper;
@ -52,7 +54,6 @@ import org.apache.cloudstack.storage.command.CopyCommand;
import org.apache.cloudstack.storage.command.browser.ListDataStoreObjectsAnswer; import org.apache.cloudstack.storage.command.browser.ListDataStoreObjectsAnswer;
import org.apache.cloudstack.storage.command.browser.ListDataStoreObjectsCommand; import org.apache.cloudstack.storage.command.browser.ListDataStoreObjectsCommand;
import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; import org.apache.cloudstack.storage.to.PrimaryDataStoreTO;
import org.junit.After;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
@ -62,17 +63,14 @@ import org.mockito.Mock;
import org.mockito.MockedConstruction; import org.mockito.MockedConstruction;
import org.mockito.MockedStatic; import org.mockito.MockedStatic;
import org.mockito.Mockito; import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.Spy; import org.mockito.Spy;
import org.mockito.junit.MockitoJUnitRunner; import org.mockito.junit.MockitoJUnitRunner;
import com.cloud.agent.api.Answer; import com.cloud.agent.api.Answer;
import com.cloud.agent.api.Command;
import com.cloud.agent.api.CheckGuestOsMappingAnswer; import com.cloud.agent.api.CheckGuestOsMappingAnswer;
import com.cloud.agent.api.CheckGuestOsMappingCommand; import com.cloud.agent.api.CheckGuestOsMappingCommand;
import com.cloud.agent.api.GetHypervisorGuestOsNamesAnswer; import com.cloud.agent.api.GetHypervisorGuestOsNamesAnswer;
import com.cloud.agent.api.GetHypervisorGuestOsNamesCommand; import com.cloud.agent.api.GetHypervisorGuestOsNamesCommand;
import com.cloud.agent.api.ScaleVmAnswer;
import com.cloud.agent.api.ScaleVmCommand; import com.cloud.agent.api.ScaleVmCommand;
import com.cloud.agent.api.routing.GetAutoScaleMetricsAnswer; import com.cloud.agent.api.routing.GetAutoScaleMetricsAnswer;
import com.cloud.agent.api.routing.GetAutoScaleMetricsCommand; import com.cloud.agent.api.routing.GetAutoScaleMetricsCommand;
@ -185,6 +183,8 @@ public class VmwareResourceTest {
VimPortType vimService; VimPortType vimService;
@Mock @Mock
HostCapability hostCapability; HostCapability hostCapability;
@Mock
ManagedObjectReference _morHyperHost;
CopyCommand storageCmd; CopyCommand storageCmd;
EnumMap<VmwareStorageProcessorConfigurableFields, Object> params = new EnumMap<VmwareStorageProcessorConfigurableFields,Object>(VmwareStorageProcessorConfigurableFields.class); EnumMap<VmwareStorageProcessorConfigurableFields, Object> params = new EnumMap<VmwareStorageProcessorConfigurableFields,Object>(VmwareStorageProcessorConfigurableFields.class);
@ -201,11 +201,9 @@ public class VmwareResourceTest {
private Map<String,String> specsArray = new HashMap<String,String>(); private Map<String,String> specsArray = new HashMap<String,String>();
AutoCloseable closeable;
@Before @Before
public void setup() throws Exception { public void setup() throws Exception {
closeable = MockitoAnnotations.openMocks(this);
storageCmd = mock(CopyCommand.class); storageCmd = mock(CopyCommand.class);
doReturn(context).when(_resource).getServiceContext(null); doReturn(context).when(_resource).getServiceContext(null);
when(cmd.getVirtualMachine()).thenReturn(vmSpec); when(cmd.getVirtualMachine()).thenReturn(vmSpec);
@ -234,11 +232,6 @@ public class VmwareResourceTest {
when(hostCapability.isNestedHVSupported()).thenReturn(true); when(hostCapability.isNestedHVSupported()).thenReturn(true);
} }
@After
public void tearDown() throws Exception {
closeable.close();
}
//Test successful scaling up the vm //Test successful scaling up the vm
@Test @Test
public void testScaleVMF1() throws Exception { public void testScaleVMF1() throws Exception {

View File

@ -154,7 +154,7 @@ public class ManagementServerMaintenanceManagerImplTest {
ManagementServerHostVO msHost2 = mock(ManagementServerHostVO.class); ManagementServerHostVO msHost2 = mock(ManagementServerHostVO.class);
List<ManagementServerHostVO> msHostList = new ArrayList<>(); List<ManagementServerHostVO> msHostList = new ArrayList<>();
msHostList.add(msHost2); msHostList.add(msHost2);
Mockito.when(msHostDao.listBy(any())).thenReturn(msHostList); Mockito.lenient().when(msHostDao.listBy(any())).thenReturn(msHostList);
Mockito.when(msHostDao.findById(1L)).thenReturn(msHost1); Mockito.when(msHostDao.findById(1L)).thenReturn(msHost1);
PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class); PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class);
Mockito.when(cmd.getManagementServerId()).thenReturn(1L); Mockito.when(cmd.getManagementServerId()).thenReturn(1L);
@ -169,7 +169,7 @@ public class ManagementServerMaintenanceManagerImplTest {
ManagementServerHostVO msHost = mock(ManagementServerHostVO.class); ManagementServerHostVO msHost = mock(ManagementServerHostVO.class);
Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up); Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up);
List<ManagementServerHostVO> msHostList = new ArrayList<>(); List<ManagementServerHostVO> msHostList = new ArrayList<>();
Mockito.when(msHostDao.listBy(any())).thenReturn(msHostList); Mockito.lenient().when(msHostDao.listBy(any())).thenReturn(msHostList);
Mockito.when(msHostDao.findById(1L)).thenReturn(msHost); Mockito.when(msHostDao.findById(1L)).thenReturn(msHost);
PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class); PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class);
Mockito.when(cmd.getManagementServerId()).thenReturn(1L); Mockito.when(cmd.getManagementServerId()).thenReturn(1L);
@ -185,7 +185,7 @@ public class ManagementServerMaintenanceManagerImplTest {
ManagementServerHostVO msHost = mock(ManagementServerHostVO.class); ManagementServerHostVO msHost = mock(ManagementServerHostVO.class);
Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up); Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up);
List<ManagementServerHostVO> msHostList = new ArrayList<>(); List<ManagementServerHostVO> msHostList = new ArrayList<>();
Mockito.when(msHostDao.listBy(any())).thenReturn(msHostList); Mockito.lenient().when(msHostDao.listBy(any())).thenReturn(msHostList);
Mockito.when(msHostDao.findById(1L)).thenReturn(msHost); Mockito.when(msHostDao.findById(1L)).thenReturn(msHost);
PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class); PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class);
Mockito.when(cmd.getManagementServerId()).thenReturn(1L); Mockito.when(cmd.getManagementServerId()).thenReturn(1L);
@ -200,7 +200,7 @@ public class ManagementServerMaintenanceManagerImplTest {
public void prepareForShutdownCmdSuccessResponseFromClusterManager() { public void prepareForShutdownCmdSuccessResponseFromClusterManager() {
ManagementServerHostVO msHost = mock(ManagementServerHostVO.class); ManagementServerHostVO msHost = mock(ManagementServerHostVO.class);
Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up); Mockito.when(msHost.getState()).thenReturn(ManagementServerHost.State.Up);
Mockito.when(msHostDao.listBy(any())).thenReturn(new ArrayList<>()); Mockito.lenient().when(msHostDao.listBy(any())).thenReturn(new ArrayList<>());
Mockito.when(msHostDao.findById(1L)).thenReturn(msHost); Mockito.when(msHostDao.findById(1L)).thenReturn(msHost);
Mockito.when(hostDao.listByMs(anyLong())).thenReturn(new ArrayList<>()); Mockito.when(hostDao.listByMs(anyLong())).thenReturn(new ArrayList<>());
PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class); PrepareForShutdownCmd cmd = mock(PrepareForShutdownCmd.class);
@ -279,7 +279,7 @@ public class ManagementServerMaintenanceManagerImplTest {
ManagementServerHostVO msHost2 = mock(ManagementServerHostVO.class); ManagementServerHostVO msHost2 = mock(ManagementServerHostVO.class);
List<ManagementServerHostVO> msHostList = new ArrayList<>(); List<ManagementServerHostVO> msHostList = new ArrayList<>();
msHostList.add(msHost2); msHostList.add(msHost2);
Mockito.when(msHostDao.listBy(any())).thenReturn(msHostList); Mockito.lenient().when(msHostDao.listBy(any())).thenReturn(msHostList);
Mockito.when(msHostDao.findById(1L)).thenReturn(msHost1); Mockito.when(msHostDao.findById(1L)).thenReturn(msHost1);
TriggerShutdownCmd cmd = mock(TriggerShutdownCmd.class); TriggerShutdownCmd cmd = mock(TriggerShutdownCmd.class);
Mockito.when(cmd.getManagementServerId()).thenReturn(1L); Mockito.when(cmd.getManagementServerId()).thenReturn(1L);

View File

@ -56,7 +56,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.mockito</groupId> <groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId> <artifactId>mockito-core</artifactId>
<version>${cs.mockito.version}</version> <version>${cs.mockito.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -134,7 +134,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.mockito</groupId> <groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId> <artifactId>mockito-core</artifactId>
<version>${cs.mockito.version}</version> <version>${cs.mockito.version}</version>
<scope>compile</scope> <scope>compile</scope>
<exclusions> <exclusions>
@ -147,7 +147,7 @@
<dependency> <dependency>
<groupId>net.bytebuddy</groupId> <groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId> <artifactId>byte-buddy</artifactId>
<version>1.14.5</version> <version>1.15.11</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>

View File

@ -59,6 +59,12 @@
<artifactId>assertj-core</artifactId> <artifactId>assertj-core</artifactId>
<version>${cs.assertj.version}</version> <version>${cs.assertj.version}</version>
<scope>test</scope> <scope>test</scope>
<exclusions>
<exclusion>
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -111,6 +111,9 @@ public class SAML2LoginAPIAuthenticatorCmdTest {
@Mock @Mock
HttpServletRequest req; HttpServletRequest req;
@Mock
Object _responseObject;
@Spy @Spy
@InjectMocks @InjectMocks
private SAML2LoginAPIAuthenticatorCmd cmdSpy; private SAML2LoginAPIAuthenticatorCmd cmdSpy;

View File

@ -116,7 +116,7 @@
<cs.junit.dataprovider.version>1.13.1</cs.junit.dataprovider.version> <cs.junit.dataprovider.version>1.13.1</cs.junit.dataprovider.version>
<cs.junit.jupiter.version>5.9.1</cs.junit.jupiter.version> <cs.junit.jupiter.version>5.9.1</cs.junit.jupiter.version>
<cs.guava-testlib.version>18.0</cs.guava-testlib.version> <cs.guava-testlib.version>18.0</cs.guava-testlib.version>
<cs.mockito.version>4.11.0</cs.mockito.version> <cs.mockito.version>5.16.1</cs.mockito.version>
<cs.selenium.server.version>1.0-20081010.060147</cs.selenium.server.version> <cs.selenium.server.version>1.0-20081010.060147</cs.selenium.server.version>
<cs.selenium-java-client-driver.version>1.0.1</cs.selenium-java-client-driver.version> <cs.selenium-java-client-driver.version>1.0.1</cs.selenium-java-client-driver.version>
<cs.testng.version>7.1.0</cs.testng.version> <cs.testng.version>7.1.0</cs.testng.version>
@ -750,7 +750,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.mockito</groupId> <groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId> <artifactId>mockito-core</artifactId>
<version>${cs.mockito.version}</version> <version>${cs.mockito.version}</version>
<scope>test</scope> <scope>test</scope>
<exclusions> <exclusions>

View File

@ -114,7 +114,7 @@ public class QueryManagerImplTest {
@Spy @Spy
@InjectMocks @InjectMocks
private QueryManagerImpl queryManagerImplSpy = new QueryManagerImpl(); private QueryManagerImpl queryManagerImplSpy;
@Mock @Mock
EntityManager entityManager; EntityManager entityManager;
@ -225,7 +225,7 @@ public class QueryManagerImplTest {
Mockito.when(entityManager.findByUuidIncludingRemoved(Network.class, uuid)).thenReturn(network); Mockito.when(entityManager.findByUuidIncludingRemoved(Network.class, uuid)).thenReturn(network);
Mockito.doNothing().when(accountManager).checkAccess(account, SecurityChecker.AccessType.ListEntry, true, network); Mockito.doNothing().when(accountManager).checkAccess(account, SecurityChecker.AccessType.ListEntry, true, network);
Mockito.when(eventDao.searchAndCount(Mockito.any(), Mockito.any(Filter.class))).thenReturn(pair); Mockito.when(eventDao.searchAndCount(Mockito.any(), Mockito.any(Filter.class))).thenReturn(pair);
Mockito.when(eventJoinDao.searchByIds(Mockito.any())).thenReturn(eventJoins); Mockito.lenient().when(eventJoinDao.searchByIds(Mockito.any())).thenReturn(eventJoins);
List<EventResponse> respList = new ArrayList<EventResponse>(); List<EventResponse> respList = new ArrayList<EventResponse>();
for (EventJoinVO vt : eventJoins) { for (EventJoinVO vt : eventJoins) {
respList.add(eventJoinDao.newEventResponse(vt)); respList.add(eventJoinDao.newEventResponse(vt));

View File

@ -118,6 +118,11 @@ import com.cloud.vm.dao.NicDao;
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class NetworkServiceImplTest { public class NetworkServiceImplTest {
@Mock
Object job;
@Mock
Object _responseObject;
@Mock @Mock
AccountManager accountManager; AccountManager accountManager;
@Mock @Mock
@ -141,11 +146,11 @@ public class NetworkServiceImplTest {
@Mock @Mock
VpcManager vpcMgr; VpcManager vpcMgr;
@Mock @Mock
NetworkOrchestrationService networkManager; NetworkOrchestrationService _networkMgr;
@Mock @Mock
AlertManager alertManager; AlertManager alertManager;
@Mock @Mock
DataCenterDao dcDao; DataCenterDao _dcDao;
@Mock @Mock
UserDao userDao; UserDao userDao;
@Mock @Mock
@ -165,7 +170,7 @@ public class NetworkServiceImplTest {
@Mock @Mock
DomainRouterDao routerDao; DomainRouterDao routerDao;
@Mock @Mock
AccountService accountService; AccountService _accountService;
@Mock @Mock
NetworkHelper networkHelper; NetworkHelper networkHelper;
@Mock @Mock
@ -192,7 +197,7 @@ public class NetworkServiceImplTest {
@Mock @Mock
private DomainVO domainVOMock; private DomainVO domainVOMock;
@InjectMocks @InjectMocks
NetworkServiceImpl service = new NetworkServiceImpl(); NetworkServiceImpl service;
@Mock @Mock
DomainDao domainDaoMock; DomainDao domainDaoMock;
@ -297,14 +302,11 @@ public class NetworkServiceImplTest {
vpc = Mockito.mock(VpcVO.class); vpc = Mockito.mock(VpcVO.class);
service._networkOfferingDao = networkOfferingDao; service._networkOfferingDao = networkOfferingDao;
service._physicalNetworkDao = physicalNetworkDao; service._physicalNetworkDao = physicalNetworkDao;
service._dcDao = dcDao;
service._accountMgr = accountManager; service._accountMgr = accountManager;
service._networkMgr = networkManager;
service.alertManager = alertManager; service.alertManager = alertManager;
service._configMgr = configMgr; service._configMgr = configMgr;
service._vpcDao = vpcDao; service._vpcDao = vpcDao;
service._vpcMgr = vpcMgr; service._vpcMgr = vpcMgr;
service._accountService = accountService;
service._networksDao = networkDao; service._networksDao = networkDao;
service._nicDao = nicDao; service._nicDao = nicDao;
service._ipAddressDao = ipAddressDao; service._ipAddressDao = ipAddressDao;
@ -323,7 +325,7 @@ public class NetworkServiceImplTest {
Mockito.when(entityMgr.findById(NetworkOffering.class, 1L)).thenReturn(networkOffering); Mockito.when(entityMgr.findById(NetworkOffering.class, 1L)).thenReturn(networkOffering);
Mockito.when(networkOfferingDao.findById(1L)).thenReturn(offering); Mockito.when(networkOfferingDao.findById(1L)).thenReturn(offering);
Mockito.when(physicalNetworkDao.findById(Mockito.anyLong())).thenReturn(phyNet); Mockito.when(physicalNetworkDao.findById(Mockito.anyLong())).thenReturn(phyNet);
Mockito.when(dcDao.findById(Mockito.anyLong())).thenReturn(dc); Mockito.when(_dcDao.findById(Mockito.anyLong())).thenReturn(dc);
Mockito.when(accountManager.isRootAdmin(accountMock.getId())).thenReturn(true); Mockito.when(accountManager.isRootAdmin(accountMock.getId())).thenReturn(true);
} }
@ -442,12 +444,12 @@ public class NetworkServiceImplTest {
Mockito.when(dc.getId()).thenReturn(1L); Mockito.when(dc.getId()).thenReturn(1L);
Mockito.when(dc.getAllocationState()).thenReturn(Grouping.AllocationState.Enabled); Mockito.when(dc.getAllocationState()).thenReturn(Grouping.AllocationState.Enabled);
Map<String, String> networkProvidersMap = new HashMap<String, String>(); Map<String, String> networkProvidersMap = new HashMap<String, String>();
Mockito.when(networkManager.finalizeServicesAndProvidersForNetwork(ArgumentMatchers.any(NetworkOffering.class), anyLong())).thenReturn(networkProvidersMap); Mockito.when(_networkMgr.finalizeServicesAndProvidersForNetwork(ArgumentMatchers.any(NetworkOffering.class), anyLong())).thenReturn(networkProvidersMap);
Mockito.when(configMgr.isOfferingForVpc(offering)).thenReturn(false); Mockito.when(configMgr.isOfferingForVpc(offering)).thenReturn(false);
Mockito.when(offering.isInternalLb()).thenReturn(false); Mockito.when(offering.isInternalLb()).thenReturn(false);
service.createGuestNetwork(createNetworkCmd); service.createGuestNetwork(createNetworkCmd);
Mockito.verify(networkManager, times(1)).createGuestNetwork(1L, "testNetwork", "Test Network", null, Mockito.verify(_networkMgr, times(1)).createGuestNetwork(1L, "testNetwork", "Test Network", null,
null, null, false, null, accountMock, null, phyNet, null, null, false, null, accountMock, null, phyNet,
1L, null, null, null, null, null, 1L, null, null, null, null, null,
true, null, null, null, null, null, true, null, null, null, null, null,
@ -769,7 +771,7 @@ public class NetworkServiceImplTest {
DataCenterVO zone = Mockito.mock(DataCenterVO.class); DataCenterVO zone = Mockito.mock(DataCenterVO.class);
when(cmd.getZoneId()).thenReturn(zoneId); when(cmd.getZoneId()).thenReturn(zoneId);
when(dcDao.findById(zoneId)).thenReturn(zone); when(_dcDao.findById(zoneId)).thenReturn(zone);
when(zone.getId()).thenReturn(zoneId); when(zone.getId()).thenReturn(zoneId);
try { try {
@ -795,7 +797,7 @@ public class NetworkServiceImplTest {
ReflectionTestUtils.setField(createNetworkCmd, "vpcId", vpcId); ReflectionTestUtils.setField(createNetworkCmd, "vpcId", vpcId);
dc = Mockito.mock(DataCenterVO.class); dc = Mockito.mock(DataCenterVO.class);
Mockito.when(dcDao.findById(zoneId)).thenReturn(dc); Mockito.when(_dcDao.findById(zoneId)).thenReturn(dc);
Mockito.when(dc.getId()).thenReturn(zoneId); Mockito.when(dc.getId()).thenReturn(zoneId);
vpc = Mockito.mock(VpcVO.class); vpc = Mockito.mock(VpcVO.class);
Mockito.when(vpc.getName()).thenReturn("Vpc 1"); Mockito.when(vpc.getName()).thenReturn("Vpc 1");
@ -831,7 +833,7 @@ public class NetworkServiceImplTest {
DataCenterVO zone = Mockito.mock(DataCenterVO.class); DataCenterVO zone = Mockito.mock(DataCenterVO.class);
when(cmd.getZoneId()).thenReturn(zoneId); when(cmd.getZoneId()).thenReturn(zoneId);
when(dcDao.findById(zoneId)).thenReturn(zone); when(_dcDao.findById(zoneId)).thenReturn(zone);
when(zone.getId()).thenReturn(zoneId); when(zone.getId()).thenReturn(zoneId);
try { try {
@ -859,7 +861,7 @@ public class NetworkServiceImplTest {
DataCenterVO zone = Mockito.mock(DataCenterVO.class); DataCenterVO zone = Mockito.mock(DataCenterVO.class);
when(cmd.getZoneId()).thenReturn(zoneId); when(cmd.getZoneId()).thenReturn(zoneId);
when(dcDao.findById(zoneId)).thenReturn(zone); when(_dcDao.findById(zoneId)).thenReturn(zone);
when(zone.getId()).thenReturn(zoneId); when(zone.getId()).thenReturn(zoneId);
try { try {
@ -889,7 +891,7 @@ public class NetworkServiceImplTest {
DataCenterVO zone = Mockito.mock(DataCenterVO.class); DataCenterVO zone = Mockito.mock(DataCenterVO.class);
when(cmd.getZoneId()).thenReturn(zoneId); when(cmd.getZoneId()).thenReturn(zoneId);
when(dcDao.findById(zoneId)).thenReturn(zone); when(_dcDao.findById(zoneId)).thenReturn(zone);
when(zone.getId()).thenReturn(zoneId); when(zone.getId()).thenReturn(zoneId);
try { try {

View File

@ -171,7 +171,9 @@ public class VirtualRouterElementTest {
@Mock private RemoteAccessVpnDao _vpnDao; @Mock private RemoteAccessVpnDao _vpnDao;
@Mock private VpnUserDao _vpnUsersDao; @Mock private VpnUserDao _vpnUsersDao;
@Mock private VirtualRouterProviderDao _vrProviderDao; @Mock private VirtualRouterProviderDao _vrProviderDao;
@Mock private LoadBalancerDao loadBalancerDao;
@Mock private LoadBalancerDao _lbDao; @Mock private LoadBalancerDao _lbDao;
@Mock private NetworkDao networkDao;
@Mock private NetworkDao _networksDao; @Mock private NetworkDao _networksDao;
@Mock private OvsProviderDao _ovsProviderDao; @Mock private OvsProviderDao _ovsProviderDao;
@ -180,6 +182,7 @@ public class VirtualRouterElementTest {
@Mock private AccountManager _accountMgr; @Mock private AccountManager _accountMgr;
@Mock private ConfigurationManager _configMgr; @Mock private ConfigurationManager _configMgr;
@Mock private NetworkModel networkModel;
@Mock private NetworkModel _networkMdl; @Mock private NetworkModel _networkMdl;
@Mock private NetworkOrchestrationService _networkMgr; @Mock private NetworkOrchestrationService _networkMgr;
@Mock private ResourceManager _resourceMgr; @Mock private ResourceManager _resourceMgr;

View File

@ -86,13 +86,11 @@ import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao; import com.cloud.vm.dao.VMInstanceDao;
import com.cloud.vpc.MockResourceLimitManagerImpl; import com.cloud.vpc.MockResourceLimitManagerImpl;
import junit.framework.TestCase;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class ResourceLimitManagerImplTest extends TestCase { public class ResourceLimitManagerImplTest {
private Logger logger = LogManager.getLogger(ResourceLimitManagerImplTest.class); private Logger logger = LogManager.getLogger(ResourceLimitManagerImplTest.class);
MockResourceLimitManagerImpl _resourceLimitService = new MockResourceLimitManagerImpl(); MockResourceLimitManagerImpl _resourceLimitService = new MockResourceLimitManagerImpl();
@ -142,14 +140,11 @@ public class ResourceLimitManagerImplTest extends TestCase {
f.set(configKey, o); f.set(configKey, o);
} }
@Before @Before
public void setUp() { public void setUp() throws Exception {
try { overrideDefaultConfigValue(ResourceLimitService.ResourceLimitHostTags, "_defaultValue", StringUtils.join(hostTags, ","));
overrideDefaultConfigValue(ResourceLimitService.ResourceLimitHostTags, "_defaultValue", StringUtils.join(hostTags, ",")); overrideDefaultConfigValue(ResourceLimitService.ResourceLimitStorageTags, "_defaultValue", StringUtils.join(storageTags, ","));
overrideDefaultConfigValue(ResourceLimitService.ResourceLimitStorageTags, "_defaultValue", StringUtils.join(storageTags, ","));
} catch (IllegalAccessException | NoSuchFieldException e) {
logger.error("Failed to update configurations");
}
Account account = mock(Account.class); Account account = mock(Account.class);
User user = mock(User.class); User user = mock(User.class);
@ -288,6 +283,7 @@ public class ResourceLimitManagerImplTest extends TestCase {
Mockito.when(template.getTemplateTag()).thenReturn(hostTags.get(0)); Mockito.when(template.getTemplateTag()).thenReturn(hostTags.get(0));
Account account = Mockito.mock(Account.class); Account account = Mockito.mock(Account.class);
try { try {
Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any());
Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any()); Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any());
resourceLimitManager.checkVmResourceLimit(account, true, serviceOffering, template); resourceLimitManager.checkVmResourceLimit(account, true, serviceOffering, template);
List<String> tags = new ArrayList<>(); List<String> tags = new ArrayList<>();
@ -347,6 +343,7 @@ public class ResourceLimitManagerImplTest extends TestCase {
Mockito.when(diskOffering.getTagsArray()).thenReturn(new String[]{checkTag}); Mockito.when(diskOffering.getTagsArray()).thenReturn(new String[]{checkTag});
Account account = Mockito.mock(Account.class); Account account = Mockito.mock(Account.class);
try { try {
Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any());
Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any()); Mockito.doNothing().when(resourceLimitManager).checkResourceLimitWithTag(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any());
resourceLimitManager.checkVolumeResourceLimit(account, true, 100L, diskOffering); resourceLimitManager.checkVolumeResourceLimit(account, true, 100L, diskOffering);
List<String> tags = new ArrayList<>(); List<String> tags = new ArrayList<>();

View File

@ -113,6 +113,8 @@ public class AccountManagerImplTest extends AccountManagetImplTestBase {
@Mock @Mock
private AccountVO accountVoMock; private AccountVO accountVoMock;
@Mock
private AccountVO _systemAccount;
@Mock @Mock
private ProjectAccountVO projectAccountVO; private ProjectAccountVO projectAccountVO;

View File

@ -56,8 +56,8 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Mockito.lenient; import static org.mockito.Mockito.lenient;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
@ -150,7 +150,7 @@ public class AccountManagerImplVolumeDeleteEventTest extends AccountManagetImplT
lenient().when(_domainMgr.getDomain(nullable(Long.class))).thenReturn(domain); lenient().when(_domainMgr.getDomain(nullable(Long.class))).thenReturn(domain);
Mockito.doReturn(true).when(_vmMgr).expunge(any(UserVmVO.class)); lenient().doReturn(true).when(_vmMgr).expunge(any(UserVmVO.class));
} }

View File

@ -286,7 +286,7 @@ public class SnapshotHelperTest {
@Test (expected = CloudRuntimeException.class) @Test (expected = CloudRuntimeException.class)
public void validateThrowCloudRuntimeExceptionOfSnapshotsOnlyInPrimaryStorage() { public void validateThrowCloudRuntimeExceptionOfSnapshotsOnlyInPrimaryStorage() {
Mockito.doReturn(new ArrayList<>()).when(snapshotDaoMock).listByIds(Mockito.any()); Mockito.lenient().doReturn(new ArrayList<>()).when(snapshotDaoMock).listByIds(Mockito.any());
snapshotHelperSpy.throwCloudRuntimeExceptionOfSnapshotsOnlyInPrimaryStorage(null, new HashSet<>()); snapshotHelperSpy.throwCloudRuntimeExceptionOfSnapshotsOnlyInPrimaryStorage(null, new HashSet<>());
} }

View File

@ -22,7 +22,6 @@ import org.apache.logging.log4j.Logger;
import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any;
import org.mockito.Mock; import org.mockito.Mock;
import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.spy;
import java.io.File; import java.io.File;
import java.nio.file.Files; import java.nio.file.Files;
@ -104,7 +103,7 @@ public class NfsSecondaryStorageResourceTest {
@Test @Test
public void testCleanupStagingNfs() throws Exception{ public void testCleanupStagingNfs() throws Exception{
NfsSecondaryStorageResource spyResource = spy(resource); NfsSecondaryStorageResource spyResource = resource;
spyResource.logger = loggerMock; spyResource.logger = loggerMock;
RuntimeException exception = new RuntimeException(); RuntimeException exception = new RuntimeException();
doThrow(exception).when(spyResource).execute(any(DeleteCommand.class)); doThrow(exception).when(spyResource).execute(any(DeleteCommand.class));