This is an automated email from the ASF dual-hosted git repository. gutoveronezi 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 a6567f3 Fix internet dependent test from 'UriUtilsParametrizedTest' class (#5905) a6567f3 is described below commit a6567f3cc591074af1a0bfbea5b17024ce6eb24e Author: Paula Oliveira <73945852+paulazo...@users.noreply.github.com> AuthorDate: Mon Jan 31 11:02:48 2022 -0300 Fix internet dependent test from 'UriUtilsParametrizedTest' class (#5905) Co-authored-by: Paula Zomignani Oliveira <pa...@scclouds.com.br> --- .../com/cloud/utils/UriUtilsParametrizedTest.java | 30 ++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/utils/src/test/java/com/cloud/utils/UriUtilsParametrizedTest.java b/utils/src/test/java/com/cloud/utils/UriUtilsParametrizedTest.java index 6f104f4..68479f5 100644 --- a/utils/src/test/java/com/cloud/utils/UriUtilsParametrizedTest.java +++ b/utils/src/test/java/com/cloud/utils/UriUtilsParametrizedTest.java @@ -19,6 +19,7 @@ package com.cloud.utils; +import java.net.InetAddress; import java.util.Collection; import java.util.LinkedList; import java.util.Set; @@ -30,10 +31,18 @@ import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; +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.powermock.modules.junit4.PowerMockRunnerDelegate; import com.google.common.collect.ImmutableSet; -@RunWith(Parameterized.class) +@RunWith(PowerMockRunner.class) +@PowerMockRunnerDelegate(Parameterized.class) +@PowerMockIgnore({"javax.xml.*", "org.apache.xerces.*", "org.xml.*", "org.w3c.*"}) public class UriUtilsParametrizedTest { @FunctionalInterface public interface ThrowingBlock<E extends Exception> { @@ -140,12 +149,29 @@ public class UriUtilsParametrizedTest { } @Test - public void validateUrl() { + @PrepareForTest({UriUtils.class}) + + public void validateUrl() throws Exception { + + InetAddress inetAddressMock = Mockito.mock(InetAddress.class); + + PowerMockito.mockStatic(InetAddress.class); + PowerMockito.when(InetAddress.getByName(Mockito.anyString())).thenReturn(inetAddressMock); + if (expectSuccess) { UriUtils.validateUrl(format, url); } else { assertThrows(() -> UriUtils.validateUrl(format, url), IllegalArgumentException.class); } + + PowerMockito.verifyStatic(InetAddress.class); + InetAddress.getByName(Mockito.anyString()); + + Mockito.verify(inetAddressMock).isAnyLocalAddress(); + Mockito.verify(inetAddressMock).isLinkLocalAddress(); + Mockito.verify(inetAddressMock).isLoopbackAddress(); + Mockito.verify(inetAddressMock).isMulticastAddress(); + } @Test