This is an automated email from the ASF dual-hosted git repository.

dahn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 481d2bd9c3f Remove powermock from core (#7978)
481d2bd9c3f is described below

commit 481d2bd9c3fc1bbbf4751d479ef1a7de4bcbf674
Author: Vishesh <[email protected]>
AuthorDate: Wed Sep 20 13:40:14 2023 +0530

    Remove powermock from core (#7978)
---
 .../com/cloud/resource/ServerResourceBaseTest.java | 162 ++++++++++-----------
 .../cloud/storage/template/OVAProcessorTest.java   |  51 +++----
 .../cloud/storage/template/QCOW2ProcessorTest.java |   8 +-
 .../cloud/storage/template/VhdProcessorTest.java   |   8 +-
 .../org.mockito.plugins.MockMaker                  |   1 +
 5 files changed, 108 insertions(+), 122 deletions(-)

diff --git a/core/src/test/java/com/cloud/resource/ServerResourceBaseTest.java 
b/core/src/test/java/com/cloud/resource/ServerResourceBaseTest.java
index d9df73fb9b1..e76ed8b1d1b 100644
--- a/core/src/test/java/com/cloud/resource/ServerResourceBaseTest.java
+++ b/core/src/test/java/com/cloud/resource/ServerResourceBaseTest.java
@@ -23,10 +23,9 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.ArgumentCaptor;
 import org.mockito.Captor;
+import org.mockito.MockedStatic;
 import org.mockito.Mockito;
-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 javax.naming.ConfigurationException;
 import java.net.NetworkInterface;
@@ -40,7 +39,7 @@ import java.util.List;
 import java.util.Map;
 
 
-@RunWith(PowerMockRunner.class)
+@RunWith(MockitoJUnitRunner.class)
 public class ServerResourceBaseTest {
 
     private static final String[] NIC_NAME_STARTS_TO_AVOID = {"vnif", "vnbr", 
"peth", "vif", "virbr"};
@@ -54,165 +53,162 @@ public class ServerResourceBaseTest {
 
     @Before
     public void setup() {
-        networkInterfaceMock1 = PowerMockito.mock(NetworkInterface.class);
-        networkInterfaceMock2 = PowerMockito.mock(NetworkInterface.class);
-        networkInterfaceMock3 = PowerMockito.mock(NetworkInterface.class);
-        networkInterfaceMock4 = PowerMockito.mock(NetworkInterface.class);
+        networkInterfaceMock1 = Mockito.mock(NetworkInterface.class);
+        networkInterfaceMock2 = Mockito.mock(NetworkInterface.class);
+        networkInterfaceMock3 = Mockito.mock(NetworkInterface.class);
+        networkInterfaceMock4 = Mockito.mock(NetworkInterface.class);
     }
 
     @Test
-    @PrepareForTest(ServerResourceBase.class)
     public void isValidNicToUseAsPrivateNicTestReturnFalseWhenNicIsVirtual() {
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(true);
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(true);
 
         
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
     }
 
     @Test
-    @PrepareForTest(ServerResourceBase.class)
     public void 
isValidNicToUseAsPrivateNicTestReturnFalseWhenNicNameStartsWithOneOfTheAvoidList()
 {
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
-        
PowerMockito.when(networkInterfaceMock.getName()).thenReturn("vniftest", 
"vnbrtest", "pethtest", "viftest", "virbrtest");
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
+        Mockito.when(networkInterfaceMock.getName()).thenReturn("vniftest", 
"vnbrtest", "pethtest", "viftest", "virbrtest");
 
         Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> 
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock)));
     }
 
     @Test
-    @PrepareForTest(ServerResourceBase.class)
     public void 
isValidNicToUseAsPrivateNicTestReturnFalseWhenNicNameContainsColon() {
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
-        PowerMockito.when(networkInterfaceMock.getName()).thenReturn("te:st");
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
+        Mockito.when(networkInterfaceMock.getName()).thenReturn("te:st");
 
         
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
     }
 
     @Test
-    @PrepareForTest({ServerResourceBase.class, NetUtils.class})
     public void 
isValidNicToUseAsPrivateNicTestReturnFalseWhenNetUtilsGetNicParamsReturnsNull() 
{
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
-        
PowerMockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
+        Mockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
 
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(null);
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(null);
 
-        Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
-            
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
-        });
+            Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
+                
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
+            });
+        }
     }
 
     @Test
-    @PrepareForTest({ServerResourceBase.class, NetUtils.class})
     public void 
isValidNicToUseAsPrivateNicTestReturnFalseWhenNetUtilsGetNicParamsReturnsFirstElementNull()
 {
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
-        
PowerMockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
+        Mockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
 
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(new 
String[]{null});
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(new 
String[]{null});
 
-        Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
-            
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
-        });
+            Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
+                
Assert.assertFalse(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
+            });
+        }
     }
 
     @Test
-    @PrepareForTest({ServerResourceBase.class, NetUtils.class})
     public void 
isValidNicToUseAsPrivateNicTestReturnTrueWhenNetUtilsGetNicParamsReturnsAValidFirstElement()
 {
-        NetworkInterface networkInterfaceMock = 
PowerMockito.mock(NetworkInterface.class);
-        PowerMockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
-        
PowerMockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
+        NetworkInterface networkInterfaceMock = 
Mockito.mock(NetworkInterface.class);
+        Mockito.when(networkInterfaceMock.isVirtual()).thenReturn(false);
+        Mockito.when(networkInterfaceMock.getName()).thenReturn("testvnif", 
"testvnbr", "testpeth", "testvif", "testvirbr");
 
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(new 
String[]{"test"});
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNicParams(Mockito.anyString())).thenReturn(new 
String[]{"test"});
 
-        Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
-            
Assert.assertTrue(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
-        });
+            Arrays.asList(NIC_NAME_STARTS_TO_AVOID).forEach(type -> {
+                
Assert.assertTrue(serverResourceBaseSpy.isValidNicToUseAsPrivateNic(networkInterfaceMock));
+            });
+        }
     }
 
     @Test(expected = ConfigurationException.class)
-    @PrepareForTest(ServerResourceBase.class)
     public void 
tryToAutoDiscoverResourcePrivateNetworkInterfaceTestThrowConfigurationExceptionWhenNicsDoesNotHaveMoreElements()
 throws SocketException, ConfigurationException {
-        PowerMockito.mockStatic(NetworkInterface.class);
-        
PowerMockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(Collections.enumeration(new
 ArrayList<>()));
+        try (MockedStatic<NetworkInterface> ignored = 
Mockito.mockStatic(NetworkInterface.class)) {
+            
Mockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(Collections.enumeration(new
 ArrayList<>()));
 
-        
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+            
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+        }
     }
 
     @Test(expected = ConfigurationException.class)
-    @PrepareForTest(ServerResourceBase.class)
     public void 
tryToAutoDiscoverResourcePrivateNetworkInterfaceTestThrowConfigurationExceptionWhenNicsGetNetworkInterfacesThrowsSocketException()
 throws SocketException, ConfigurationException {
-        PowerMockito.mockStatic(NetworkInterface.class);
-        
PowerMockito.when(NetworkInterface.getNetworkInterfaces()).thenThrow(SocketException.class);
+        try (MockedStatic<NetworkInterface> ignored = 
Mockito.mockStatic(NetworkInterface.class)) {
+            
Mockito.when(NetworkInterface.getNetworkInterfaces()).thenThrow(SocketException.class);
 
-        
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+            
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+        }
     }
 
     @Test(expected = ConfigurationException.class)
-    @PrepareForTest(ServerResourceBase.class)
     public void 
tryToAutoDiscoverResourcePrivateNetworkInterfaceTestThrowConfigurationExceptionWhenThereIsNoValidNics()
 throws SocketException, ConfigurationException {
-        PowerMockito.mockStatic(NetworkInterface.class);
-        
PowerMockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(Collections.enumeration(Arrays.asList(networkInterfaceMock1,
 networkInterfaceMock2)));
-        
Mockito.doReturn(false).when(serverResourceBaseSpy).isValidNicToUseAsPrivateNic(Mockito.any());
+        try (MockedStatic<NetworkInterface> ignored = 
Mockito.mockStatic(NetworkInterface.class)) {
+            
Mockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(Collections.enumeration(Arrays.asList(networkInterfaceMock1,
 networkInterfaceMock2)));
+            
Mockito.doReturn(false).when(serverResourceBaseSpy).isValidNicToUseAsPrivateNic(Mockito.any());
 
-        
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+            
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
 
-        Mockito.verify(serverResourceBaseSpy, 
Mockito.times(2)).isValidNicToUseAsPrivateNic(Mockito.any());
+            Mockito.verify(serverResourceBaseSpy, 
Mockito.times(2)).isValidNicToUseAsPrivateNic(Mockito.any());
+        }
     }
 
     @Test
-    @PrepareForTest(ServerResourceBase.class)
     public void 
tryToAutoDiscoverResourcePrivateNetworkInterfaceTestReturnNic() throws 
SocketException, ConfigurationException {
         Enumeration<NetworkInterface> interfaces = 
Collections.enumeration(Arrays.asList(networkInterfaceMock1, 
networkInterfaceMock2));
 
-        PowerMockito.mockStatic(NetworkInterface.class);
-        
PowerMockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(interfaces);
-        Mockito.doReturn(false, 
true).when(serverResourceBaseSpy).isValidNicToUseAsPrivateNic(Mockito.any());
+        try (MockedStatic<NetworkInterface> ignored = 
Mockito.mockStatic(NetworkInterface.class)) {
+            
Mockito.when(NetworkInterface.getNetworkInterfaces()).thenReturn(interfaces);
+            Mockito.doReturn(false, 
true).when(serverResourceBaseSpy).isValidNicToUseAsPrivateNic(Mockito.any());
 
-        
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
+            
serverResourceBaseSpy.tryToAutoDiscoverResourcePrivateNetworkInterface();
 
-        Assert.assertEquals(networkInterfaceMock2, 
serverResourceBaseSpy._privateNic);
-        Mockito.verify(serverResourceBaseSpy, 
Mockito.times(2)).isValidNicToUseAsPrivateNic(Mockito.any());
+            Assert.assertEquals(networkInterfaceMock2, 
serverResourceBaseSpy._privateNic);
+            Mockito.verify(serverResourceBaseSpy, 
Mockito.times(2)).isValidNicToUseAsPrivateNic(Mockito.any());
+        }
     }
 
     @Test
-    @PrepareForTest(NetUtils.class)
     public void 
defineResourceNetworkInterfacesTestUseXenbr0WhenPrivateNetworkInterfaceNotConfigured()
 {
         Map<String, Object> params = createParamsMap(null, "cloudbr1", 
"cloudbr2", "cloudbr3");
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
 
-        serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
+            serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
 
-        verifyAndAssertNetworkInterfaces("xenbr0", "cloudbr1", "cloudbr2", 
"cloudbr3");
+            verifyAndAssertNetworkInterfaces("xenbr0", "cloudbr1", "cloudbr2", 
"cloudbr3");
+        }
     }
 
     @Test
-    @PrepareForTest(NetUtils.class)
     public void 
defineResourceNetworkInterfacesTestUseXenbr1WhenPublicNetworkInterfaceNotConfigured()
 {
         Map<String, Object> params = createParamsMap("cloudbr0", null, 
"cloudbr2", "cloudbr3");
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
 
-        serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
+            serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
 
-        verifyAndAssertNetworkInterfaces("cloudbr0", "xenbr1", "cloudbr2", 
"cloudbr3");
+            verifyAndAssertNetworkInterfaces("cloudbr0", "xenbr1", "cloudbr2", 
"cloudbr3");
+        }
     }
 
     @Test
-    @PrepareForTest(NetUtils.class)
     public void 
defineResourceNetworkInterfacesTestUseConfiguredNetworkInterfaces() {
         Map<String, Object> params = createParamsMap("cloudbr0", "cloudbr1", 
"cloudbr2", "cloudbr3");
-        PowerMockito.mockStatic(NetUtils.class);
-        
PowerMockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
+        try (MockedStatic<NetUtils> ignored = 
Mockito.mockStatic(NetUtils.class)) {
+            
Mockito.when(NetUtils.getNetworkInterface(Mockito.anyString())).thenReturn(networkInterfaceMock1,
 networkInterfaceMock2, networkInterfaceMock3, networkInterfaceMock4);
 
-        serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
+            serverResourceBaseSpy.defineResourceNetworkInterfaces(params);
 
-        verifyAndAssertNetworkInterfaces("cloudbr0", "cloudbr1", "cloudbr2", 
"cloudbr3");
+            verifyAndAssertNetworkInterfaces("cloudbr0", "cloudbr1", 
"cloudbr2", "cloudbr3");
+        }
     }
 
     private Map<String, Object> createParamsMap(String... params) {
@@ -225,7 +221,7 @@ public class ServerResourceBaseTest {
     }
 
     private void verifyAndAssertNetworkInterfaces(String... expectedResults) {
-        PowerMockito.verifyStatic(NetUtils.class, Mockito.times(4));
+        Mockito.verify(NetUtils.class, Mockito.times(4));
         NetUtils.getNetworkInterface(keyCaptor.capture());
         List<String> keys = keyCaptor.getAllValues();
 
diff --git 
a/core/src/test/java/com/cloud/storage/template/OVAProcessorTest.java 
b/core/src/test/java/com/cloud/storage/template/OVAProcessorTest.java
index 2387842fe33..8ab54644718 100644
--- a/core/src/test/java/com/cloud/storage/template/OVAProcessorTest.java
+++ b/core/src/test/java/com/cloud/storage/template/OVAProcessorTest.java
@@ -28,19 +28,15 @@ 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.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PowerMockIgnore;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
+import org.mockito.junit.MockitoJUnitRunner;
 
 import java.io.File;
 import java.util.HashMap;
 import java.util.Map;
 
-@RunWith(PowerMockRunner.class)
-@PowerMockIgnore({"javax.xml.*", "java.xml.*", "javax.management.*", 
"org.apache.xerces.*"})
-@PrepareForTest(OVAProcessor.class)
+@RunWith(MockitoJUnitRunner.class)
 public class OVAProcessorTest {
     OVAProcessor processor;
 
@@ -49,7 +45,7 @@ public class OVAProcessorTest {
 
     @Before
     public void setUp() throws Exception {
-        processor = PowerMockito.spy(new OVAProcessor());
+        processor = Mockito.spy(new OVAProcessor());
         Map<String, Object> params = new HashMap<String, Object>();
         params.put(StorageLayer.InstanceConfigKey, mockStorageLayer);
         processor.configure("OVA Processor", params);
@@ -62,11 +58,11 @@ public class OVAProcessorTest {
 
         
Mockito.when(mockStorageLayer.exists(Mockito.anyString())).thenReturn(true);
 
-        Script mockScript = Mockito.mock(Script.class);
-        
PowerMockito.whenNew(Script.class).withAnyArguments().thenReturn(mockScript);
-        PowerMockito.when(mockScript.execute()).thenReturn("error while 
untaring the file");
-
-        processor.process(templatePath, null, templateName);
+        try (MockedConstruction<Script> ignored = 
Mockito.mockConstruction(Script.class, (mock, context) -> {
+            Mockito.when(mock.execute()).thenReturn("error while untaring the 
file");
+        })) {
+            processor.process(templatePath, null, templateName);
+        }
     }
 
     @Test(expected = InternalErrorException.class)
@@ -78,11 +74,11 @@ public class OVAProcessorTest {
         
Mockito.when(mockStorageLayer.getSize(Mockito.anyString())).thenReturn(1000l);
         Mockito.doThrow(new InternalErrorException("virtual size calculation 
failed")).when(processor).getTemplateVirtualSize(Mockito.anyString(), 
Mockito.anyString());
 
-        Script mockScript = Mockito.mock(Script.class);
-        
PowerMockito.whenNew(Script.class).withAnyArguments().thenReturn(mockScript);
-        PowerMockito.when(mockScript.execute()).thenReturn(null);
-
-        processor.process(templatePath, null, templateName);
+        try (MockedConstruction<Script> ignored = 
Mockito.mockConstruction(Script.class, (mock, context) -> {
+            Mockito.when(mock.execute()).thenReturn(null);
+        })) {
+            processor.process(templatePath, null, templateName);
+        }
     }
 
     @Test
@@ -96,15 +92,15 @@ public class OVAProcessorTest {
         
Mockito.when(mockStorageLayer.getSize(Mockito.anyString())).thenReturn(actualSize);
         
Mockito.doReturn(virtualSize).when(processor).getTemplateVirtualSize(Mockito.anyString(),
 Mockito.anyString());
 
-        Script mockScript = Mockito.mock(Script.class);
-        
PowerMockito.whenNew(Script.class).withAnyArguments().thenReturn(mockScript);
-        PowerMockito.when(mockScript.execute()).thenReturn(null);
-
-        Processor.FormatInfo info = processor.process(templatePath, null, 
templateName);
-        Assert.assertEquals(Storage.ImageFormat.OVA, info.format);
-        Assert.assertEquals("actual size:", actualSize, info.size);
-        Assert.assertEquals("virtual size:", virtualSize, info.virtualSize);
-        Assert.assertEquals("template name:", templateName + ".ova", 
info.filename);
+        try (MockedConstruction<Script> ignored = 
Mockito.mockConstruction(Script.class, (mock, context) -> {
+            Mockito.when(mock.execute()).thenReturn(null);
+        })) {
+            Processor.FormatInfo info = processor.process(templatePath, null, 
templateName);
+            Assert.assertEquals(Storage.ImageFormat.OVA, info.format);
+            Assert.assertEquals("actual size:", actualSize, info.size);
+            Assert.assertEquals("virtual size:", virtualSize, 
info.virtualSize);
+            Assert.assertEquals("template name:", templateName + ".ova", 
info.filename);
+        }
     }
 
     @Test
@@ -129,7 +125,6 @@ public class OVAProcessorTest {
         String templatePath = "/tmp";
         String templateName = "template";
         File mockFile = Mockito.mock(File.class);
-        Mockito.when(mockFile.length()).thenReturn(actualSize);
         Mockito.when(mockFile.getParent()).thenReturn(templatePath);
         Mockito.when(mockFile.getName()).thenReturn(templateName);
         
Mockito.doReturn(virtualSize).when(processor).getTemplateVirtualSize(templatePath,
 templateName);
diff --git 
a/core/src/test/java/com/cloud/storage/template/QCOW2ProcessorTest.java 
b/core/src/test/java/com/cloud/storage/template/QCOW2ProcessorTest.java
index 8fff0adaea8..abab00858a4 100644
--- a/core/src/test/java/com/cloud/storage/template/QCOW2ProcessorTest.java
+++ b/core/src/test/java/com/cloud/storage/template/QCOW2ProcessorTest.java
@@ -29,15 +29,13 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.Mockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 import com.cloud.exception.InternalErrorException;
 import com.cloud.storage.Storage;
 import com.cloud.storage.StorageLayer;
+import org.mockito.junit.MockitoJUnitRunner;
 
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(QCOW2Processor.class)
+@RunWith(MockitoJUnitRunner.class)
 public class QCOW2ProcessorTest {
     QCOW2Processor processor;
 
@@ -102,9 +100,7 @@ public class QCOW2ProcessorTest {
     @Test
     public void testGetVirtualSize() throws Exception {
         long virtualSize = 2000;
-        long actualSize = 1000;
         File mockFile = Mockito.mock(File.class);
-        Mockito.when(mockFile.length()).thenReturn(actualSize);
         
Mockito.doReturn(virtualSize).when(processor).getTemplateVirtualSize((File)Mockito.any());
         Assert.assertEquals(virtualSize, processor.getVirtualSize(mockFile));
         Mockito.verify(mockFile, Mockito.times(0)).length();
diff --git 
a/core/src/test/java/com/cloud/storage/template/VhdProcessorTest.java 
b/core/src/test/java/com/cloud/storage/template/VhdProcessorTest.java
index 2be4353f793..467d9a3fa45 100644
--- a/core/src/test/java/com/cloud/storage/template/VhdProcessorTest.java
+++ b/core/src/test/java/com/cloud/storage/template/VhdProcessorTest.java
@@ -32,15 +32,14 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.Mockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
+
 
 import com.cloud.exception.InternalErrorException;
 import com.cloud.storage.Storage;
 import com.cloud.storage.StorageLayer;
+import org.mockito.junit.MockitoJUnitRunner;
 
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(VhdProcessor.class)
+@RunWith(MockitoJUnitRunner.class)
 public class VhdProcessorTest {
     VhdProcessor processor;
 
@@ -107,7 +106,6 @@ public class VhdProcessorTest {
         long virtualSize = 2000;
         long actualSize = 1000;
         File mockFile = Mockito.mock(File.class);
-        Mockito.when(mockFile.length()).thenReturn(actualSize);
         
Mockito.doReturn(virtualSize).when(processor).getTemplateVirtualSize((File) 
Mockito.any());
         Assert.assertEquals(virtualSize, processor.getVirtualSize(mockFile));
         Mockito.verify(mockFile,Mockito.times(0)).length();
diff --git 
a/core/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker 
b/core/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644
index 00000000000..1f0955d450f
--- /dev/null
+++ b/core/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
@@ -0,0 +1 @@
+mock-maker-inline

Reply via email to