Skip to content

Commit ecbdcd6

Browse files
committed
do not use mockConstruction
Signed-off-by: Abhishek Kumar <[email protected]>
1 parent d384fb2 commit ecbdcd6

File tree

1 file changed

+12
-13
lines changed

1 file changed

+12
-13
lines changed

utils/src/test/java/org/apache/cloudstack/utils/server/ServerPropertiesUtilTest.java

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,18 @@
1919

2020
import static org.junit.Assert.assertEquals;
2121
import static org.junit.Assert.assertNull;
22-
import static org.mockito.ArgumentMatchers.any;
23-
import static org.mockito.Mockito.doThrow;
2422
import static org.mockito.Mockito.mock;
25-
import static org.mockito.Mockito.mockConstruction;
2623
import static org.mockito.Mockito.mockStatic;
2724
import static org.mockito.Mockito.when;
2825

2926
import java.io.File;
30-
import java.io.FileInputStream;
3127
import java.io.IOException;
3228
import java.nio.file.Files;
3329
import java.util.Properties;
3430

31+
import org.junit.After;
3532
import org.junit.Test;
3633
import org.junit.runner.RunWith;
37-
import org.mockito.MockedConstruction;
3834
import org.mockito.MockedStatic;
3935
import org.mockito.junit.MockitoJUnitRunner;
4036

@@ -43,6 +39,11 @@
4339
@RunWith(MockitoJUnitRunner.class)
4440
public class ServerPropertiesUtilTest {
4541

42+
@After
43+
public void clearCache() {
44+
ServerPropertiesUtil.propertiesRef.set(null);
45+
}
46+
4647
@Test
4748
public void returnsPropertyValueWhenPropertiesAreLoaded() {
4849
Properties mockProperties = mock(Properties.class);
@@ -81,15 +82,13 @@ public void returnsNullWhenPropertiesFileNotFound() {
8182
}
8283

8384
@Test
84-
public void returnsNullWhenIOExceptionOccurs() {
85-
File mockFile = mock(File.class);
86-
try (MockedStatic<PropertiesUtil> mocked = mockStatic(PropertiesUtil.class);
87-
MockedConstruction<FileInputStream> ignored = mockConstruction(FileInputStream.class);
88-
MockedConstruction<Properties> ignored1 = mockConstruction(Properties.class, (mock, context) -> {
89-
doThrow(new IOException("Test IOException")).when(mock).load(any(FileInputStream.class));
90-
})) {
85+
public void returnsNullWhenIOExceptionOccurs() throws IOException {
86+
File tempFile = Files.createTempFile("bad", ".properties").toFile();
87+
tempFile.deleteOnExit();
88+
Files.writeString(tempFile.toPath(), "\u0000\u0000\u0000");
89+
try (MockedStatic<PropertiesUtil> mocked = mockStatic(PropertiesUtil.class)) {
9190
mocked.when(() -> PropertiesUtil.findConfigFile(ServerPropertiesUtil.PROPERTIES_FILE))
92-
.thenReturn(mockFile);
91+
.thenReturn(tempFile);
9392
assertNull(ServerPropertiesUtil.getProperty("key"));
9493
}
9594
}

0 commit comments

Comments
 (0)