diff --git a/pom.xml b/pom.xml
index 4c208e6..db761b9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -137,19 +137,6 @@
test
-
- org.testcontainers
- testcontainers
- ${testcontainers.version}
- test
-
-
- org.apache.commons
- commons-compress
-
-
-
-
org.wiremock
wiremock-standalone
diff --git a/src/test/java/io/jenkins/plugins/checks/IntegrationTestBase.java b/src/test/java/io/jenkins/plugins/checks/IntegrationTestBase.java
deleted file mode 100644
index a79ddd5..0000000
--- a/src/test/java/io/jenkins/plugins/checks/IntegrationTestBase.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package io.jenkins.plugins.checks;
-
-import io.jenkins.plugins.util.IntegrationTest;
-import org.junit.Rule;
-import org.jvnet.hudson.test.JenkinsRule;
-
-/**
- * Base class for integration tests.
- */
-public abstract class IntegrationTestBase extends IntegrationTest {
- /**
- * Provide a jenkins rule.
- */
- @Rule
- public JenkinsRule r = new JenkinsRule();
-
- @Override
- protected JenkinsRule getJenkins() {
- return r;
- }
-}
diff --git a/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextITest.java b/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextITest.java
index 3ca59ed..997ed15 100644
--- a/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextITest.java
+++ b/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextITest.java
@@ -7,22 +7,32 @@
import hudson.model.Run;
import hudson.plugins.git.BranchSpec;
import hudson.plugins.git.GitSCM;
-import io.jenkins.plugins.checks.IntegrationTestBase;
-import java.io.IOException;
import java.util.Collections;
import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition;
import org.jenkinsci.plugins.workflow.job.WorkflowJob;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.jvnet.hudson.test.JenkinsRule;
+import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
/**
* Integration tests for {@link GitSCMChecksContext}.
*/
-public class GitSCMChecksContextITest extends IntegrationTestBase {
+@WithJenkins
+class GitSCMChecksContextITest {
+
private static final String EXISTING_HASH = "4ecc8623b06d99d5f029b66927438554fdd6a467";
private static final String HTTP_URL = "https://github.com/jenkinsci/gitea-checks-plugin.git";
private static final String CREDENTIALS_ID = "credentials";
private static final String URL_NAME = "url";
+ private JenkinsRule r;
+
+ @BeforeEach
+ void setUp(final JenkinsRule rule) {
+ r = rule;
+ }
+
/**
* Creates a FreeStyle job that uses {@link hudson.plugins.git.GitSCM} and runs a successful build.
* Then this build is used to create a new {@link GitSCMChecksContext}. So the build actually is not publishing
@@ -30,8 +40,8 @@ public class GitSCMChecksContextITest extends IntegrationTestBase {
* Wiremock to handle the requests to Gitea).
*/
@Test
- public void shouldRetrieveContextFromFreeStyleBuild() throws IOException {
- FreeStyleProject job = createFreeStyleProject();
+ void shouldRetrieveContextFromFreeStyleBuild() throws Exception {
+ FreeStyleProject job = r.createFreeStyleProject();
BranchSpec branchSpec = new BranchSpec(EXISTING_HASH);
GitSCM scm = new GitSCM(
@@ -42,7 +52,7 @@ public void shouldRetrieveContextFromFreeStyleBuild() throws IOException {
Collections.emptyList());
job.setScm(scm);
- Run, ?> run = buildSuccessfully(job);
+ Run, ?> run = r.buildAndAssertSuccess(job);
GitSCMChecksContext gitSCMChecksContext = new GitSCMChecksContext(run, URL_NAME);
@@ -56,8 +66,8 @@ public void shouldRetrieveContextFromFreeStyleBuild() throws IOException {
* Then this build is used to create a new {@link GitSCMChecksContext}.
*/
@Test
- public void shouldRetrieveContextFromPipeline() {
- WorkflowJob job = createPipeline();
+ void shouldRetrieveContextFromPipeline() throws Exception {
+ WorkflowJob job = r.createProject(WorkflowJob.class);
assertDoesNotThrow(() -> job.setDefinition(new CpsFlowDefinition(
"node {\n"
@@ -72,7 +82,7 @@ public void shouldRetrieveContextFromPipeline() {
+ "}\n",
true)));
- Run, ?> run = buildSuccessfully(job);
+ Run, ?> run = r.buildAndAssertSuccess(job);
GitSCMChecksContext gitSCMChecksContext = new GitSCMChecksContext(run, URL_NAME);
diff --git a/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextTest.java b/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextTest.java
index 8118212..6c9ebcb 100644
--- a/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextTest.java
+++ b/src/test/java/io/jenkins/plugins/checks/gitea/GitSCMChecksContextTest.java
@@ -7,8 +7,9 @@
import org.junit.jupiter.api.Test;
class GitSCMChecksContextTest {
+
@Test
- public void shouldGetRepository() {
+ void shouldGetRepository() {
for (String url : new String[] {
"git@197.168.2.0:jenkinsci/gitea-checks-plugin",
"git@localhost:jenkinsci/gitea-checks-plugin",
diff --git a/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksDetailsTest.java b/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksDetailsTest.java
index 3be871b..11270f6 100644
--- a/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksDetailsTest.java
+++ b/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksDetailsTest.java
@@ -11,6 +11,7 @@
import org.junit.jupiter.api.Test;
class GiteaChecksDetailsTest {
+
@Test
void shouldReturnAllGiteaObjectsCorrectly() {
ChecksDetails details = new ChecksDetailsBuilder()
diff --git a/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksPublisherITest.java b/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksPublisherITest.java
index 66b4a3d..567af8d 100644
--- a/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksPublisherITest.java
+++ b/src/test/java/io/jenkins/plugins/checks/gitea/GiteaChecksPublisherITest.java
@@ -6,13 +6,11 @@
import com.cloudbees.plugins.credentials.common.StandardCredentials;
import com.github.tomakehurst.wiremock.core.WireMockConfiguration;
-import com.github.tomakehurst.wiremock.junit.WireMockRule;
-import edu.umd.cs.findbugs.annotations.CheckForNull;
+import com.github.tomakehurst.wiremock.junit5.WireMockExtension;
import hudson.model.FreeStyleProject;
import hudson.model.Job;
import hudson.model.Queue;
import hudson.model.Run;
-import io.jenkins.plugins.checks.IntegrationTestBase;
import io.jenkins.plugins.checks.api.ChecksAction;
import io.jenkins.plugins.checks.api.ChecksAnnotation.ChecksAnnotationBuilder;
import io.jenkins.plugins.checks.api.ChecksAnnotation.ChecksAnnotationLevel;
@@ -26,11 +24,11 @@
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.Arrays;
-import java.util.Collection;
import java.util.Collections;
import java.util.Optional;
-import java.util.function.Function;
+import java.util.function.Supplier;
import java.util.logging.Level;
+import java.util.stream.Stream;
import jenkins.model.ParameterizedJobMixIn;
import jenkins.scm.api.SCMHead;
import org.jenkinsci.plugin.gitea.GiteaSCMSource;
@@ -38,101 +36,71 @@
import org.jenkinsci.plugins.displayurlapi.ClassicDisplayURLProvider;
import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition;
import org.jenkinsci.plugins.workflow.job.WorkflowJob;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.TestInstance;
+import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
import org.jvnet.hudson.test.Issue;
-import org.jvnet.hudson.test.LoggerRule;
+import org.jvnet.hudson.test.JenkinsRule;
+import org.jvnet.hudson.test.LogRecorder;
+import org.jvnet.hudson.test.junit.jupiter.WithJenkins;
/**
* Tests if the {@link GiteaChecksPublisher} actually sends out the requests to
* Gitea in order to publish the check runs.
*/
-@RunWith(Parameterized.class)
-@SuppressWarnings({
- "PMD.ExcessiveImports",
- "checkstyle:ClassDataAbstractionCoupling",
- "rawtypes",
- "checkstyle:ClassFanOutComplexity",
- "checkstyle:JavaNCSS"
-})
-public class GiteaChecksPublisherITest extends IntegrationTestBase {
- /**
- * Provides parameters for tests.
- * @return A list of methods used to create GiteaChecksContexts, with which each test should be run.
- */
- @Parameterized.Parameters(name = "{0}")
- @SuppressWarnings("PMD.UnnecessaryVarargsArrayCreation") // TODO: fix me?
- public static Collection