diff --git a/pom.xml b/pom.xml index 90337355f..c7cd1e841 100644 --- a/pom.xml +++ b/pom.xml @@ -22,7 +22,6 @@ jenkinsci/${project.artifactId} 1.4.0 2.12.3 - 2.0.9 @@ -209,19 +208,7 @@ org.mockito - mockito-core - test - - - org.powermock - powermock-api-mockito2 - ${powermock.version} - test - - - org.powermock - powermock-module-junit4 - ${powermock.version} + mockito-inline test diff --git a/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabCommitStatusPublisherTest.java b/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabCommitStatusPublisherTest.java index 1a9516e77..5068a2622 100644 --- a/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabCommitStatusPublisherTest.java +++ b/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabCommitStatusPublisherTest.java @@ -56,6 +56,7 @@ import static org.junit.Assert.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyString; +import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.mockserver.model.HttpRequest.request; @@ -347,7 +348,8 @@ private AbstractBuild mockBuild(String gitLabConnection, Result result, String.. when(build.getUrl()).thenReturn(BUILD_URL); AbstractProject project = mock(AbstractProject.class); when(project.getProperty(GitLabConnectionProperty.class)).thenReturn(new GitLabConnectionProperty(gitLabConnection)); - when(build.getProject()).thenReturn(project); + doReturn(project).when(build).getParent(); + doReturn(project).when(build).getProject(); EnvVars environment = mock(EnvVars.class); when(environment.expand(anyString())).thenAnswer(new Answer() { @Override @@ -405,7 +407,8 @@ private AbstractBuild mockBuildWithLibrary(String gitLabConnection, Result resul AbstractProject project = mock(AbstractProject.class); when(project.getProperty(GitLabConnectionProperty.class)).thenReturn(new GitLabConnectionProperty(gitLabConnection)); - when(build.getProject()).thenReturn(project); + doReturn(project).when(build).getParent(); + doReturn(project).when(build).getProject(); EnvVars environment = mock(EnvVars.class); when(environment.expand(anyString())).thenAnswer(new Answer() { @Override diff --git a/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabMessagePublisherTest.java b/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabMessagePublisherTest.java index df6caa768..05339c53e 100644 --- a/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabMessagePublisherTest.java +++ b/src/test/java/com/dabsquared/gitlabjenkins/publisher/GitLabMessagePublisherTest.java @@ -32,6 +32,7 @@ import static com.dabsquared.gitlabjenkins.publisher.TestUtility.*; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyString; +import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.mockserver.model.HttpRequest.request; @@ -232,7 +233,8 @@ private AbstractBuild mockBuild(String gitLabConnection, Result result, String.. AbstractProject project = mock(AbstractProject.class); when(project.getProperty(GitLabConnectionProperty.class)).thenReturn(new GitLabConnectionProperty(gitLabConnection)); - when(build.getProject()).thenReturn(project); + doReturn(project).when(build).getParent(); + doReturn(project).when(build).getProject(); EnvVars environment = mock(EnvVars.class); when(environment.expand(anyString())).thenAnswer(new Answer() { @Override diff --git a/src/test/java/com/dabsquared/gitlabjenkins/publisher/TestUtility.java b/src/test/java/com/dabsquared/gitlabjenkins/publisher/TestUtility.java index d9974a708..6c47ddd89 100644 --- a/src/test/java/com/dabsquared/gitlabjenkins/publisher/TestUtility.java +++ b/src/test/java/com/dabsquared/gitlabjenkins/publisher/TestUtility.java @@ -93,7 +93,8 @@ static AbstractBuild mockSimpleBuild(String gitLabConnection, Result result, Str AbstractProject project = mock(AbstractProject.class); when(project.getProperty(GitLabConnectionProperty.class)).thenReturn(new GitLabConnectionProperty(gitLabConnection)); - when(build.getProject()).thenReturn(project); + doReturn(project).when(build).getParent(); + doReturn(project).when(build).getProject(); return build; } diff --git a/src/test/java/com/dabsquared/gitlabjenkins/util/CommitStatusUpdaterTest.java b/src/test/java/com/dabsquared/gitlabjenkins/util/CommitStatusUpdaterTest.java index 9753d7c3f..2c3c33ca3 100644 --- a/src/test/java/com/dabsquared/gitlabjenkins/util/CommitStatusUpdaterTest.java +++ b/src/test/java/com/dabsquared/gitlabjenkins/util/CommitStatusUpdaterTest.java @@ -3,7 +3,10 @@ import static org.mockito.Matchers.any; import static com.dabsquared.gitlabjenkins.cause.CauseDataBuilder.causeData; -import static org.mockito.Mockito.*; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; import java.io.PrintStream; import java.util.ArrayList; @@ -15,14 +18,13 @@ import hudson.Util; import org.eclipse.jgit.lib.ObjectId; import org.jenkinsci.plugins.displayurlapi.DisplayURLProvider; +import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.junit.runner.RunWith; import org.mockito.Mock; +import org.mockito.MockedStatic; +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 com.dabsquared.gitlabjenkins.cause.CauseData; import com.dabsquared.gitlabjenkins.cause.GitLabWebHookCause; @@ -45,8 +47,6 @@ /** * @author Daumantas Stulgis */ -@RunWith(PowerMockRunner.class) -@PrepareForTest({GitLabConnectionProperty.class, Jenkins.class, DisplayURLProvider.class}) public class CommitStatusUpdaterTest { private static final int PROJECT_ID = 1; @@ -70,18 +70,23 @@ public class CommitStatusUpdaterTest { @Mock Jenkins jenkins; @Mock GitLabConnectionProperty connection; + private AutoCloseable closeable; + private MockedStatic mockedJenkins; + private MockedStatic mockedGitLabConnectionProperty; + private MockedStatic mockedDisplayURLProvider; + CauseData causeData; @Before public void setUp() throws Exception { - MockitoAnnotations.initMocks(this); - PowerMockito.mockStatic(GitLabConnectionProperty.class); - PowerMockito.mockStatic(Jenkins.class); - when(Jenkins.getInstance()).thenReturn(jenkins); - when(Jenkins.getActiveInstance()).thenReturn(jenkins); + closeable = MockitoAnnotations.openMocks(this); + mockedJenkins = Mockito.mockStatic(Jenkins.class); + mockedJenkins.when(Jenkins::getInstance).thenReturn(jenkins); + mockedJenkins.when(Jenkins::getActiveInstance).thenReturn(jenkins); when(jenkins.getRootUrl()).thenReturn(JENKINS_URL); when(jenkins.getDescriptor(GitLabConnectionConfig.class)).thenReturn(gitLabConnectionConfig); - when(GitLabConnectionProperty.getClient(any(Run.class))).thenReturn(client); + mockedGitLabConnectionProperty = Mockito.mockStatic(GitLabConnectionProperty.class); + mockedGitLabConnectionProperty.when(() -> GitLabConnectionProperty.getClient(any(Run.class))).thenReturn(client); when(gitLabConnectionConfig.getClient(any(String.class), any(Item.class), any(String.class))).thenReturn(client); when(connection.getClient()).thenReturn(client); when(build.getAction(BuildData.class)).thenReturn(action); @@ -99,9 +104,9 @@ public void setUp() throws Exception { } else { when(taskListener.getLogger()).thenReturn(new PrintStream("/dev/null")); } - PowerMockito.mockStatic(DisplayURLProvider.class); + mockedDisplayURLProvider = Mockito.mockStatic(DisplayURLProvider.class); DisplayURLProvider urlProvider = mock(DisplayURLProvider.class); - when(DisplayURLProvider.get()).thenReturn(urlProvider); + mockedDisplayURLProvider.when(DisplayURLProvider::get).thenReturn(urlProvider); String url = JENKINS_URL+ Util.encode(build.getUrl()); when(urlProvider.getRunURL(any())).thenReturn(url); @@ -133,7 +138,15 @@ public void setUp() throws Exception { .build(); when(gitlabCause.getData()).thenReturn(causeData); - PowerMockito.spy(client); + spy(client); + } + + @After + public void tearDown() throws Exception { + mockedDisplayURLProvider.close(); + mockedGitLabConnectionProperty.close(); + mockedJenkins.close(); + closeable.close(); } @Test