From 1a1e0cd07d6ca5974dd82e1e35a77fa6005c30fc Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Thu, 30 Apr 2020 15:02:35 +0200 Subject: [PATCH] #145 - Migrate unit tests to JUnit 5 and AssertJ. --- .../data/microbenchmark/r2dbc/Book.java | 8 +- release-tools/pom.xml | 8 +- .../data/release/git/GitCommands.java | 7 +- .../data/release/issues/Tickets.java | 2 +- .../data/release/issues/github/GitHub.java | 2 +- .../release/AbstractIntegrationTests.java | 3 - .../data/release/ApplicationTests.java | 6 +- .../data/release/ArtifactUnitTests.java | 16 +-- .../data/release/WireMockExtension.java | 49 ++++++++++ .../data/release/build/ArgumentUnitTest.java | 29 +++--- .../release/build/MavenIntegrationTests.java | 18 ++-- .../build/MavenPropertiesUnitTests.java | 27 +++-- .../build/UpdateInformationUnitTests.java | 51 +++++----- .../cli/ReleaseCommandsIntegrationTests.java | 20 ++-- ...DeploymentInformationIntegrationTests.java | 16 +-- .../DeploymentOperationsIntegrationTests.java | 11 ++- .../DeploymentOperationsUnitTests.java | 6 +- .../release/git/BackportTargetsUnitTests.java | 20 ++-- .../data/release/git/BranchUnitTests.java | 22 ++--- .../data/release/git/CommitUnitTests.java | 8 +- .../git/GitOperationsIntegrationTests.java | 26 ++--- .../data/release/git/GitProjectUnitTests.java | 14 +-- .../git/GitPropertiesIntegrationTests.java | 14 +-- .../io/IoPropertiesIntegrationTests.java | 12 +-- .../GitHubIssueTrackerIntegrationTests.java | 98 ++++++++----------- .../issues/github/GitHubIssueUnitTests.java | 13 +-- .../github/GithubMilestoneUnitTests.java | 24 ++--- .../issues/jira/JiraComponentsUnitTests.java | 25 ++--- .../jira/JiraConnectorIntegrationTests.java | 95 ++++++++---------- .../issues/jira/JiraVersionUnitTests.java | 24 ++--- .../release/issues/jira/TicketsUnitTests.java | 38 ++++--- .../model/ArtifactVersionUnitTests.java | 79 +++++++-------- .../release/model/CalverVersionUnitTests.java | 12 +-- .../release/model/IterationUnitTests.java | 12 +-- .../model/ModuleIterationUnitTests.java | 23 +++-- .../data/release/model/ProjectUnitTests.java | 26 +++-- .../data/release/model/TrackerTest.java | 20 ++-- .../data/release/model/TrainsUnitTest.java | 15 ++- .../sagan/MaintainedVersionUnitTests.java | 6 +- .../sagan/MaintainedVersionsUnitTests.java | 6 +- .../ProjectMetadataSerializationTests.java | 6 +- .../SaganOperationsIntegrationTests.java | 19 ++-- 42 files changed, 480 insertions(+), 456 deletions(-) create mode 100644 release-tools/src/test/java/org/springframework/data/release/WireMockExtension.java diff --git a/benchmark/relational/src/main/java/org/springframework/data/microbenchmark/r2dbc/Book.java b/benchmark/relational/src/main/java/org/springframework/data/microbenchmark/r2dbc/Book.java index 1b5ad1b..06b4ae6 100644 --- a/benchmark/relational/src/main/java/org/springframework/data/microbenchmark/r2dbc/Book.java +++ b/benchmark/relational/src/main/java/org/springframework/data/microbenchmark/r2dbc/Book.java @@ -18,7 +18,7 @@ package org.springframework.data.microbenchmark.r2dbc; import lombok.AccessLevel; import lombok.RequiredArgsConstructor; import lombok.Value; -import lombok.experimental.Wither; +import lombok.With; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.PersistenceConstructor; @@ -30,12 +30,12 @@ import org.springframework.data.annotation.PersistenceConstructor; @RequiredArgsConstructor(access = AccessLevel.PACKAGE, onConstructor = @__(@PersistenceConstructor)) class Book { - @Wither(AccessLevel.PACKAGE) @Id Long id; + @With(AccessLevel.PACKAGE) @Id Long id; String title; int pages; - + public Book(String title, int pages) { - + this.id = null; this.title = title; this.pages = pages; diff --git a/release-tools/pom.xml b/release-tools/pom.xml index d93dc5f..824a56b 100644 --- a/release-tools/pom.xml +++ b/release-tools/pom.xml @@ -1,6 +1,6 @@ + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 org.springframework.data.build spring-data-release-cli @@ -96,7 +96,7 @@ org.eclipse.jgit org.eclipse.jgit - 5.7.0.202003110725-r + 5.6.0.201912101111-r @@ -120,7 +120,7 @@ com.github.tomakehurst wiremock - 1.58 + 2.26.3 test diff --git a/release-tools/src/main/java/org/springframework/data/release/git/GitCommands.java b/release-tools/src/main/java/org/springframework/data/release/git/GitCommands.java index 465634e..444e631 100644 --- a/release-tools/src/main/java/org/springframework/data/release/git/GitCommands.java +++ b/release-tools/src/main/java/org/springframework/data/release/git/GitCommands.java @@ -119,10 +119,9 @@ class GitCommands extends TimedCommand { public void backportChangelogs(@CliOption(key = "", mandatory = true) TrainIteration iteration, // @CliOption(key = "target") String trains) { - List targets = trains == null ? Collections.emptyList() - : Stream.of(trains.split(",")).// - map(it -> ReleaseTrains.getTrainByName(it)).// - collect(Collectors.toList()); + List targets = trains == null ? Collections.emptyList() : Stream.of(trains.split(",")).// + map(it -> ReleaseTrains.getTrainByName(it)).// + collect(Collectors.toList()); git.backportChangelogs(iteration, targets); } diff --git a/release-tools/src/main/java/org/springframework/data/release/issues/Tickets.java b/release-tools/src/main/java/org/springframework/data/release/issues/Tickets.java index e9d59dd..f4910af 100644 --- a/release-tools/src/main/java/org/springframework/data/release/issues/Tickets.java +++ b/release-tools/src/main/java/org/springframework/data/release/issues/Tickets.java @@ -64,7 +64,7 @@ public class Tickets implements Streamable { public Ticket getReleaseTicket(ModuleIteration moduleIteration) { return findReleaseTicket(moduleIteration).orElseThrow( - () -> new IllegalStateException(String.format("Did not find a release ticket for %s!", moduleIteration))); + () -> new IllegalArgumentException(String.format("Did not find a release ticket for %s!", moduleIteration))); } public Tickets getIssueTickets(ModuleIteration moduleIteration) { diff --git a/release-tools/src/main/java/org/springframework/data/release/issues/github/GitHub.java b/release-tools/src/main/java/org/springframework/data/release/issues/github/GitHub.java index cd26a7c..bfac737 100644 --- a/release-tools/src/main/java/org/springframework/data/release/issues/github/GitHub.java +++ b/release-tools/src/main/java/org/springframework/data/release/issues/github/GitHub.java @@ -530,7 +530,7 @@ class GitHub implements IssueTracker { Optional milestone = findMilestone(moduleIteration, repositoryName); return milestone - .orElseThrow(() -> new IllegalStateException(String.format("No milestone for %s found containing %s!", // + .orElseThrow(() -> new IllegalArgumentException(String.format("No milestone for %s found containing %s!", // moduleIteration.getProject().getFullName(), // moduleIteration.getShortVersionString()))); } diff --git a/release-tools/src/test/java/org/springframework/data/release/AbstractIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/AbstractIntegrationTests.java index cdc3e2f..c7f0f65 100644 --- a/release-tools/src/test/java/org/springframework/data/release/AbstractIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/AbstractIntegrationTests.java @@ -15,15 +15,12 @@ */ package org.springframework.data.release; -import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; /** * @author Oliver Gierke */ @ActiveProfiles({ "local", "test" }) -@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = Application.class) public abstract class AbstractIntegrationTests {} diff --git a/release-tools/src/test/java/org/springframework/data/release/ApplicationTests.java b/release-tools/src/test/java/org/springframework/data/release/ApplicationTests.java index 2a8d924..23c1373 100644 --- a/release-tools/src/test/java/org/springframework/data/release/ApplicationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/ApplicationTests.java @@ -15,13 +15,13 @@ */ package org.springframework.data.release; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * @author Oliver Gierke */ -public class ApplicationTests extends AbstractIntegrationTests { +class ApplicationTests extends AbstractIntegrationTests { @Test - public void bootstrapsApplication() {} + void bootstrapsApplication() {} } diff --git a/release-tools/src/test/java/org/springframework/data/release/ArtifactUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/ArtifactUnitTests.java index ba84375..33e170e 100644 --- a/release-tools/src/test/java/org/springframework/data/release/ArtifactUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/ArtifactUnitTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.build.MavenArtifact; import org.springframework.data.release.model.ArtifactVersion; import org.springframework.data.release.model.Iteration; @@ -28,15 +28,15 @@ import org.springframework.data.release.model.ReleaseTrains; /** * @author Oliver Gierke */ -public class ArtifactUnitTests { +class ArtifactUnitTests { @Test - public void testname() { + void testname() { MavenArtifact artifact = new MavenArtifact(ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.JPA, Iteration.M1)); - assertThat(artifact.getArtifactId(), is("spring-data-jpa")); - assertThat(artifact.getVersion(), is(ArtifactVersion.of("1.6.0.M1"))); - assertThat(artifact.getNextDevelopmentVersion(), is(ArtifactVersion.of("1.6.0.BUILD-SNAPSHOT"))); + assertThat(artifact.getArtifactId()).isEqualTo("spring-data-jpa"); + assertThat(artifact.getVersion()).isEqualTo(ArtifactVersion.of("1.6.0.M1")); + assertThat(artifact.getNextDevelopmentVersion()).isEqualTo(ArtifactVersion.of("1.6.0.BUILD-SNAPSHOT")); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/WireMockExtension.java b/release-tools/src/test/java/org/springframework/data/release/WireMockExtension.java new file mode 100644 index 0000000..8e7faaa --- /dev/null +++ b/release-tools/src/test/java/org/springframework/data/release/WireMockExtension.java @@ -0,0 +1,49 @@ +/* + * Copyright 2020 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.data.release; + +import org.junit.jupiter.api.extension.AfterEachCallback; +import org.junit.jupiter.api.extension.BeforeEachCallback; +import org.junit.jupiter.api.extension.ExtensionContext; + +import com.github.tomakehurst.wiremock.WireMockServer; +import com.github.tomakehurst.wiremock.client.WireMock; +import com.github.tomakehurst.wiremock.core.WireMockConfiguration; + +/** + * @author Mark Paluch + */ +public class WireMockExtension extends WireMockServer implements BeforeEachCallback, AfterEachCallback { + + private final WireMockConfiguration configuration; + + public WireMockExtension(WireMockConfiguration configuration) { + super(configuration); + this.configuration = configuration; + } + + @Override + public void beforeEach(ExtensionContext context) { + WireMock.configureFor(configuration.portNumber()); + this.start(); + } + + @Override + public void afterEach(ExtensionContext context) { + this.stop(); + this.resetAll(); + } +} diff --git a/release-tools/src/test/java/org/springframework/data/release/build/ArgumentUnitTest.java b/release-tools/src/test/java/org/springframework/data/release/build/ArgumentUnitTest.java index 15b6118..e7b5f5b 100644 --- a/release-tools/src/test/java/org/springframework/data/release/build/ArgumentUnitTest.java +++ b/release-tools/src/test/java/org/springframework/data/release/build/ArgumentUnitTest.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.build; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.build.CommandLine.Argument; import org.springframework.data.release.model.Password; @@ -26,34 +26,35 @@ import org.springframework.data.release.model.Password; * Unit tests for {@link Argument}. * * @author Oliver Gierke + * @author Mark Paluch */ -public class ArgumentUnitTest { +class ArgumentUnitTest { @Test - public void masksMaskedForToString() { + void masksMaskedForToString() { Argument argument = Argument.of("password").withValue(Password.of("password")); - assertThat(argument.toCommandLineArgument(), is("password=password")); - assertThat(argument.toString(), startsWith("password=********")); + assertThat(argument.toCommandLineArgument()).isEqualTo("password=password"); + assertThat(argument.toString()).startsWith("password=********"); } @Test - public void quotesValue() { + void quotesValue() { Argument argument = Argument.of("quoted").withQuotedValue("value"); - assertThat(argument.toCommandLineArgument(), is("quoted=\"value\"")); + assertThat(argument.toCommandLineArgument()).isEqualTo("quoted=\"value\""); } @Test - public void argCreatesJvmArgument() { - assertThat(Argument.arg("foo").toCommandLineArgument(), is("-Dfoo")); + void argCreatesJvmArgument() { + assertThat(Argument.arg("foo").toCommandLineArgument()).isEqualTo("-Dfoo"); } @Test - public void profileCreatesMavenProfile() { - assertThat(Argument.profile("foo").toCommandLineArgument(), is("-Pfoo")); - assertThat(Argument.profile("foo", "bar").toCommandLineArgument(), is("-Pfoo,bar")); + void profileCreatesMavenProfile() { + assertThat(Argument.profile("foo").toCommandLineArgument()).isEqualTo("-Pfoo"); + assertThat(Argument.profile("foo", "bar").toCommandLineArgument()).isEqualTo("-Pfoo,bar"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/build/MavenIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/build/MavenIntegrationTests.java index bc685c9..c7fd20d 100644 --- a/release-tools/src/test/java/org/springframework/data/release/build/MavenIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/build/MavenIntegrationTests.java @@ -23,8 +23,9 @@ import java.io.IOException; import java.net.URL; import java.net.URLConnection; -import org.junit.BeforeClass; -import org.junit.Test; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.ClassPathResource; import org.springframework.data.release.AbstractIntegrationTests; @@ -32,6 +33,7 @@ import org.springframework.data.release.git.GitOperations; import org.springframework.data.release.io.Workspace; import org.springframework.data.release.model.ArtifactVersion; import org.springframework.data.release.model.Projects; + import org.xmlbeam.ProjectionFactory; import org.xmlbeam.evaluation.XPathEvaluator; import org.xmlbeam.io.XBFileIO; @@ -40,15 +42,15 @@ import org.xmlbeam.io.XBFileIO; * @author Oliver Gierke * @author Mark Paluch */ -public class MavenIntegrationTests extends AbstractIntegrationTests { +class MavenIntegrationTests extends AbstractIntegrationTests { @Autowired Workspace workspace; @Autowired ProjectionFactory projection; @Autowired MavenBuildSystem maven; @Autowired GitOperations git; - @BeforeClass - public static void beforeClass() { + @BeforeAll + static void beforeClass() { try { URL url = new URL("https://github.com"); @@ -61,7 +63,7 @@ public class MavenIntegrationTests extends AbstractIntegrationTests { } @Test - public void modifiesParentPomCorrectly() throws IOException { + void modifiesParentPomCorrectly() throws IOException { XBFileIO io = projection.io().file(new ClassPathResource("parent-pom.xml").getFile()); @@ -77,7 +79,7 @@ public class MavenIntegrationTests extends AbstractIntegrationTests { } @Test - public void updatesRepositoriesCorrectly() throws Exception { + void updatesRepositoriesCorrectly() throws Exception { XBFileIO io = projection.io().file(new ClassPathResource("sample-pom.xml").getFile()); @@ -90,7 +92,7 @@ public class MavenIntegrationTests extends AbstractIntegrationTests { } @Test - public void findsSnapshotDependencies() throws Exception { + void findsSnapshotDependencies() throws Exception { Pom pom = projection.io().file(workspace.getFile("bom/pom.xml", Projects.BUILD)).read(Pom.class); diff --git a/release-tools/src/test/java/org/springframework/data/release/build/MavenPropertiesUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/build/MavenPropertiesUnitTests.java index 545a759..aae5daf 100644 --- a/release-tools/src/test/java/org/springframework/data/release/build/MavenPropertiesUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/build/MavenPropertiesUnitTests.java @@ -15,25 +15,24 @@ */ package org.springframework.data.release.build; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import java.util.Collections; -import org.junit.Before; -import org.junit.Test; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; /** * Unit tests for {@link MavenProperties}. * * @author Oliver Gierke */ -public class MavenPropertiesUnitTests { +class MavenPropertiesUnitTests { MavenProperties properties; - @Before - public void setUp() { + @BeforeEach + void setUp() { this.properties = new MavenProperties(); this.properties.setPlugins(Collections.singletonMap("versions", "org.codehaus.mojo:versions-maven-plugin:2.2")); @@ -43,25 +42,25 @@ public class MavenPropertiesUnitTests { * @see #8 */ @Test - public void expandsGoalsCorrectly() { + void expandsGoalsCorrectly() { - assertThat(properties.getFullyQualifiedPlugin("versions:set"), - is("org.codehaus.mojo:versions-maven-plugin:2.2:set")); + assertThat(properties.getFullyQualifiedPlugin("versions:set")) + .isEqualTo("org.codehaus.mojo:versions-maven-plugin:2.2:set"); } /** * @see #8 */ @Test - public void doesNotExpandGoalStartingWithDash() { - assertThat(properties.getFullyQualifiedPlugin("-versions:set"), is("-versions:set")); + void doesNotExpandGoalStartingWithDash() { + assertThat(properties.getFullyQualifiedPlugin("-versions:set")).isEqualTo("-versions:set"); } /** * @see #8 */ @Test - public void doesNotExpandGoalWithoutColon() { - assertThat(properties.getFullyQualifiedPlugin("versions-set"), is("versions-set")); + void doesNotExpandGoalWithoutColon() { + assertThat(properties.getFullyQualifiedPlugin("versions-set")).isEqualTo("versions-set"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/build/UpdateInformationUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/build/UpdateInformationUnitTests.java index d68662f..e2af131 100644 --- a/release-tools/src/test/java/org/springframework/data/release/build/UpdateInformationUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/build/UpdateInformationUnitTests.java @@ -15,12 +15,13 @@ */ package org.springframework.data.release.build; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import java.util.Arrays; -import org.junit.Test; +import org.assertj.core.api.Assertions; +import org.junit.jupiter.api.Test; + import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.Phase; import org.springframework.data.release.model.Projects; @@ -31,57 +32,59 @@ import org.springframework.data.release.model.TrainIteration; * Unit tests for {@link UpdateInformation}. * * @author Oliver Gierke + * @author Mark Paluch */ -public class UpdateInformationUnitTests { +class UpdateInformationUnitTests { TrainIteration hopperM1 = new TrainIteration(ReleaseTrains.HOPPER, Iteration.M1); - @Test(expected = IllegalArgumentException.class) - public void rejectsNullTrainIteration() { - UpdateInformation.of(null, Phase.CLEANUP); - } - - @Test(expected = IllegalArgumentException.class) - public void rejectsNullPhase() { - UpdateInformation.of(hopperM1, null); + @Test + void rejectsNullTrainIteration() { + Assertions.assertThatIllegalArgumentException().isThrownBy(() -> UpdateInformation.of(null, Phase.CLEANUP)); } @Test - public void exposesMilestoneRepositoryForMilestone() { - assertThat(UpdateInformation.of(hopperM1, Phase.PREPARE).getRepository().getId(), is("spring-libs-milestone")); + void rejectsNullPhase() { + Assertions.assertThatIllegalArgumentException().isThrownBy(() -> UpdateInformation.of(hopperM1, null)); } @Test - public void exposesReleaseRepositoryForGA() { + void exposesMilestoneRepositoryForMilestone() { + assertThat(UpdateInformation.of(hopperM1, Phase.PREPARE).getRepository().getId()) + .isEqualTo("spring-libs-milestone"); + } + + @Test + void exposesReleaseRepositoryForGA() { Arrays.asList(Iteration.GA, Iteration.SR1).forEach(iteration -> { TrainIteration trainIteration = new TrainIteration(ReleaseTrains.HOPPER, iteration); - assertThat(UpdateInformation.of(trainIteration, Phase.PREPARE).getRepository().getId(), - is("spring-libs-release")); + assertThat(UpdateInformation.of(trainIteration, Phase.PREPARE).getRepository().getId()) + .isEqualTo("spring-libs-release"); }); } @Test - public void calculatesProjectVersionToSetCorrectly() { + void calculatesProjectVersionToSetCorrectly() { UpdateInformation updateInformation = UpdateInformation.of(hopperM1, Phase.PREPARE); - assertThat(updateInformation.getProjectVersionToSet(Projects.JPA).toString(), is("1.10.0.M1")); + assertThat(updateInformation.getProjectVersionToSet(Projects.JPA).toString()).isEqualTo("1.10.0.M1"); updateInformation = UpdateInformation.of(hopperM1, Phase.CLEANUP); - assertThat(updateInformation.getProjectVersionToSet(Projects.JPA).toString(), is("1.10.0.BUILD-SNAPSHOT")); + assertThat(updateInformation.getProjectVersionToSet(Projects.JPA).toString()).isEqualTo("1.10.0.BUILD-SNAPSHOT"); } /** * @see #22 */ @Test - public void returnsCorrectReleaseTrainVersions() { + void returnsCorrectReleaseTrainVersions() { TrainIteration hopperGa = new TrainIteration(ReleaseTrains.HOPPER, Iteration.GA); TrainIteration hopperSr1 = new TrainIteration(ReleaseTrains.HOPPER, Iteration.SR1); - assertThat(UpdateInformation.of(hopperGa, Phase.PREPARE).getReleaseTrainVersion(), is("Hopper-RELEASE")); - assertThat(UpdateInformation.of(hopperM1, Phase.PREPARE).getReleaseTrainVersion(), is("Hopper-M1")); - assertThat(UpdateInformation.of(hopperSr1, Phase.PREPARE).getReleaseTrainVersion(), is("Hopper-SR1")); + assertThat(UpdateInformation.of(hopperGa, Phase.PREPARE).getReleaseTrainVersion()).isEqualTo("Hopper-RELEASE"); + assertThat(UpdateInformation.of(hopperM1, Phase.PREPARE).getReleaseTrainVersion()).isEqualTo("Hopper-M1"); + assertThat(UpdateInformation.of(hopperSr1, Phase.PREPARE).getReleaseTrainVersion()).isEqualTo("Hopper-SR1"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/cli/ReleaseCommandsIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/cli/ReleaseCommandsIntegrationTests.java index a61a38f..96c1534 100644 --- a/release-tools/src/test/java/org/springframework/data/release/cli/ReleaseCommandsIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/cli/ReleaseCommandsIntegrationTests.java @@ -15,16 +15,17 @@ */ package org.springframework.data.release.cli; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import static org.junit.Assume.*; import java.io.IOException; import java.net.URL; import java.net.URLConnection; -import org.junit.BeforeClass; -import org.junit.Test; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; import org.springframework.data.release.git.GitOperations; @@ -33,13 +34,14 @@ import org.springframework.data.release.model.ReleaseTrains; /** * @author Oliver Gierke */ -public class ReleaseCommandsIntegrationTests extends AbstractIntegrationTests { +@Disabled("Skip GitHub interaction") +class ReleaseCommandsIntegrationTests extends AbstractIntegrationTests { @Autowired ReleaseCommands releaseCommands; @Autowired GitOperations git; - @BeforeClass - public static void beforeClass() { + @BeforeAll + static void beforeClass() { try { URL url = new URL("https://github.com"); @@ -52,10 +54,10 @@ public class ReleaseCommandsIntegrationTests extends AbstractIntegrationTests { } @Test - public void predictsReleaseTrainCorrectly() throws Exception { + void predictsReleaseTrainCorrectly() throws Exception { git.update(ReleaseTrains.MOORE); - assertThat(releaseCommands.predictTrainAndIteration(), is("Neumann")); + assertThat(releaseCommands.predictTrainAndIteration()).isEqualTo("Neumann"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentInformationIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentInformationIntegrationTests.java index a871367..cb23b9a 100644 --- a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentInformationIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentInformationIntegrationTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.deployment; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; import org.springframework.data.release.model.Iteration; @@ -32,20 +32,20 @@ import org.springframework.data.release.model.TrainIteration; * * @author Oliver Gierke */ -public class DeploymentInformationIntegrationTests extends AbstractIntegrationTests { +class DeploymentInformationIntegrationTests extends AbstractIntegrationTests { @Autowired DeploymentProperties properties; @Test - public void createsDeploymentInformation() { + void createsDeploymentInformation() { TrainIteration iteration = new TrainIteration(ReleaseTrains.HOPPER, Iteration.M1); ModuleIteration buildModule = iteration.getModule(Projects.BUILD); DeploymentInformation information = new DefaultDeploymentInformation(buildModule, properties); - assertThat(information.getDeploymentTargetUrl(), containsString(properties.getServer().getUri().toString())); - assertThat(information.getBuildName(), is("Spring Data Build - Release")); - assertThat(information.getTargetRepository(), is("test-libs-milestone-local")); + assertThat(information.getDeploymentTargetUrl()).contains(properties.getServer().getUri().toString()); + assertThat(information.getBuildName()).isEqualTo("Spring Data Build - Release"); + assertThat(information.getTargetRepository()).isEqualTo("test-libs-milestone-local"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsIntegrationTests.java index 5a9f5c7..be95e19 100644 --- a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsIntegrationTests.java @@ -15,8 +15,9 @@ */ package org.springframework.data.release.deployment; -import org.junit.Ignore; -import org.junit.Test; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; import org.springframework.data.release.build.BuildOperations; @@ -31,8 +32,8 @@ import org.springframework.data.release.model.Train; /** * @author Oliver Gierke */ -@Ignore("I will deploy an artifact") -public class DeploymentOperationsIntegrationTests extends AbstractIntegrationTests { +@Disabled("I will deploy an artifact") +class DeploymentOperationsIntegrationTests extends AbstractIntegrationTests { @Autowired GitOperations git; @Autowired BuildOperations build; @@ -40,7 +41,7 @@ public class DeploymentOperationsIntegrationTests extends AbstractIntegrationTes @Autowired ArtifactoryClient client; @Test - public void testname() { + void testname() { Train train = ReleaseTrains.HOPPER; ModuleIteration buildModule = train.getModuleIteration(Projects.BUILD, Iteration.M1); diff --git a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsUnitTests.java index 1a25d31..af95257 100644 --- a/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/deployment/DeploymentOperationsUnitTests.java @@ -17,7 +17,7 @@ package org.springframework.data.release.deployment; import static org.mockito.Mockito.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; import org.springframework.data.release.model.Projects; @@ -29,10 +29,10 @@ import org.springframework.data.release.utils.Logger; * * @author Oliver Drotbohm */ -public class DeploymentOperationsUnitTests { +class DeploymentOperationsUnitTests { @Test // #113 - public void skipsPromotionForPublicArtifacts() { + void skipsPromotionForPublicArtifacts() { Logger logger = mock(Logger.class); ArtifactoryClient client = mock(ArtifactoryClient.class); diff --git a/release-tools/src/test/java/org/springframework/data/release/git/BackportTargetsUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/git/BackportTargetsUnitTests.java index 4688ec5..81bca48 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/BackportTargetsUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/BackportTargetsUnitTests.java @@ -15,12 +15,12 @@ */ package org.springframework.data.release.git; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import java.util.Arrays; -import org.junit.Test; +import org.junit.jupiter.api.Test; + import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; import org.springframework.data.release.model.Projects; @@ -33,7 +33,7 @@ import org.springframework.data.release.model.TrainIteration; * * @author Oliver Gierke */ -public class BackportTargetsUnitTests { +class BackportTargetsUnitTests { Branch goslingBranch = getBranch(ReleaseTrains.GOSLING); Branch fowlerBranch = getBranch(ReleaseTrains.FOWLER); @@ -42,30 +42,30 @@ public class BackportTargetsUnitTests { * @see #11 */ @Test - public void returnsModuleBranchesForTrains() { + void returnsModuleBranchesForTrains() { TrainIteration iteration = new TrainIteration(ReleaseTrains.HOPPER, Iteration.M1); ModuleIteration module = iteration.getModule(Projects.COMMONS); BackportTargets targets = new BackportTargets(module, Arrays.asList(ReleaseTrains.GOSLING, ReleaseTrains.FOWLER)); - assertThat(targets, is(iterableWithSize(2))); - assertThat(targets, hasItems(goslingBranch, fowlerBranch)); + assertThat(targets).hasSize(2); + assertThat(targets).contains(goslingBranch, fowlerBranch); } /** * @see #11 */ @Test - public void includesMasterBranchForServiceReleaseSource() { + void includesMasterBranchForServiceReleaseSource() { TrainIteration iteration = new TrainIteration(ReleaseTrains.GOSLING, Iteration.SR2); ModuleIteration module = iteration.getModule(Projects.COMMONS); BackportTargets targets = new BackportTargets(module, Arrays.asList(ReleaseTrains.FOWLER)); - assertThat(targets, is(iterableWithSize(2))); - assertThat(targets, hasItems(Branch.MASTER, fowlerBranch)); + assertThat(targets).hasSize(2); + assertThat(targets).contains(Branch.MASTER, fowlerBranch); } private static Branch getBranch(Train train) { diff --git a/release-tools/src/test/java/org/springframework/data/release/git/BranchUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/git/BranchUnitTests.java index c5e5957..f187d67 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/BranchUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/BranchUnitTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.git; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.IterationVersion; import org.springframework.data.release.model.SimpleIterationVersion; @@ -28,31 +28,31 @@ import org.springframework.data.release.model.Version; /** * @author Oliver Gierke */ -public class BranchUnitTests { +class BranchUnitTests { @Test - public void testname() { + void testname() { IterationVersion iterationVersion = new SimpleIterationVersion(Version.of(1, 4), Iteration.RC1); - assertThat(Branch.from(iterationVersion).toString(), is("master")); + assertThat(Branch.from(iterationVersion).toString()).isEqualTo("master"); } @Test - public void createsBugfixBranchForServiceRelease() { + void createsBugfixBranchForServiceRelease() { IterationVersion iterationVersion = new SimpleIterationVersion(Version.of(1, 4), Iteration.SR1); - assertThat(Branch.from(iterationVersion).toString(), is("1.4.x")); + assertThat(Branch.from(iterationVersion).toString()).isEqualTo("1.4.x"); } /** * @see #2 */ @Test - public void detectsIssueBranches() { + void detectsIssueBranches() { Branch branch = Branch.from("issue/DATACMNS-4711"); - assertThat(branch.isIssueBranch(Tracker.JIRA), is(true)); - assertThat(branch.isIssueBranch(Tracker.GITHUB), is(false)); + assertThat(branch.isIssueBranch(Tracker.JIRA)).isTrue(); + assertThat(branch.isIssueBranch(Tracker.GITHUB)).isFalse(); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/git/CommitUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/git/CommitUnitTests.java index bdba16f..9a695b5 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/CommitUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/CommitUnitTests.java @@ -19,7 +19,7 @@ import static org.assertj.core.api.Assertions.*; import java.util.Optional; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.mockito.Mockito; import org.springframework.data.release.issues.Ticket; @@ -28,17 +28,17 @@ import org.springframework.data.release.issues.TicketStatus; /** * @author Mark Paluch */ -public class CommitUnitTests { +class CommitUnitTests { @Test - public void shouldRenderCommitMessage() { + void shouldRenderCommitMessage() { assertThat(new Commit(new Ticket("1234", "Hello", Mockito.mock(TicketStatus.class)), "Summary", Optional.empty())) .hasToString("1234 - Summary."); } @Test - public void shouldRenderCommitMessageWithDetail() { + void shouldRenderCommitMessageWithDetail() { assertThat( new Commit(new Ticket("1234", "Hello", Mockito.mock(TicketStatus.class)), "Summary", Optional.of("detail"))) diff --git a/release-tools/src/test/java/org/springframework/data/release/git/GitOperationsIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/git/GitOperationsIntegrationTests.java index 625262e..162de4b 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/GitOperationsIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/GitOperationsIntegrationTests.java @@ -15,8 +15,7 @@ */ package org.springframework.data.release.git; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import static org.junit.Assume.*; import static org.springframework.data.release.model.Projects.*; @@ -24,8 +23,10 @@ import java.io.IOException; import java.net.URL; import java.net.URLConnection; -import org.junit.BeforeClass; -import org.junit.Test; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; import org.springframework.data.release.model.ReleaseTrains; @@ -34,12 +35,13 @@ import org.springframework.data.release.model.TestReleaseTrains; /** * @author Oliver Gierke */ -public class GitOperationsIntegrationTests extends AbstractIntegrationTests { +@Disabled +class GitOperationsIntegrationTests extends AbstractIntegrationTests { @Autowired GitOperations gitOperations; - @BeforeClass - public static void beforeClass() { + @BeforeAll + static void beforeClass() { try { URL url = new URL("https://github.com"); @@ -52,25 +54,25 @@ public class GitOperationsIntegrationTests extends AbstractIntegrationTests { } @Test - public void updatesGitRepositories() throws Exception { + void updatesGitRepositories() throws Exception { gitOperations.update(ReleaseTrains.GOSLING); } @Test - public void showTags() throws Exception { + void showTags() throws Exception { gitOperations.update(TestReleaseTrains.SAMPLE); - assertThat(gitOperations.getTags(BUILD).asList(), is(not(emptyIterable()))); + assertThat(gitOperations.getTags(BUILD).asList()).isNotEmpty(); } @Test - public void foo() throws Exception { + void foo() throws Exception { gitOperations.update(TestReleaseTrains.SAMPLE); } @Test - public void obtainsVersionTagsForRepoThatAlsoHasOtherTags() { + void obtainsVersionTagsForRepoThatAlsoHasOtherTags() { gitOperations.getTags(MONGO_DB); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/git/GitProjectUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/git/GitProjectUnitTests.java index 2ec2679..9042137 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/GitProjectUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/GitProjectUnitTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.git; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.model.Module; import org.springframework.data.release.model.Project; import org.springframework.data.release.model.Projects; @@ -30,10 +30,10 @@ import org.springframework.data.release.model.Train; * * @author Oliver Gierke */ -public class GitProjectUnitTests { +class GitProjectUnitTests { @Test - public void buildsGitHubRepositoryUriCorrectly() { + void buildsGitHubRepositoryUriCorrectly() { Train codd = ReleaseTrains.CODD; GitServer server = new GitServer(); @@ -44,7 +44,7 @@ public class GitProjectUnitTests { String projectUri = gitProject.getProjectUri(); - assertThat(projectUri, startsWith(server.getUri())); - assertThat(projectUri, endsWith("spring-data-commons")); + assertThat(projectUri).startsWith(server.getUri()); + assertThat(projectUri).endsWith("spring-data-commons"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/git/GitPropertiesIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/git/GitPropertiesIntegrationTests.java index d75f170..447bba3 100644 --- a/release-tools/src/test/java/org/springframework/data/release/git/GitPropertiesIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/git/GitPropertiesIntegrationTests.java @@ -15,23 +15,23 @@ */ package org.springframework.data.release.git; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; /** * @author Oliver Gierke */ -public class GitPropertiesIntegrationTests extends AbstractIntegrationTests { +class GitPropertiesIntegrationTests extends AbstractIntegrationTests { @Autowired GitProperties gitProperties; @Test - public void hasBasicPropertiesConfigured() { - assertThat(gitProperties.getAuthor(), is(notNullValue())); - assertThat(gitProperties.getEmail(), is(notNullValue())); + void hasBasicPropertiesConfigured() { + assertThat(gitProperties.getAuthor()).isNotNull(); + assertThat(gitProperties.getEmail()).isNotNull(); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/io/IoPropertiesIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/io/IoPropertiesIntegrationTests.java index fad09ec..6ee3e0a 100644 --- a/release-tools/src/test/java/org/springframework/data/release/io/IoPropertiesIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/io/IoPropertiesIntegrationTests.java @@ -15,22 +15,22 @@ */ package org.springframework.data.release.io; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; /** * @author Oliver Gierke */ -public class IoPropertiesIntegrationTests extends AbstractIntegrationTests { +class IoPropertiesIntegrationTests extends AbstractIntegrationTests { @Autowired IoProperties ioProperties; @Test - public void configuresWorkingDirectoryFromApplicationProperties() { - assertThat(ioProperties.getWorkDir(), is(notNullValue())); + void configuresWorkingDirectoryFromApplicationProperties() { + assertThat(ioProperties.getWorkDir()).isNotNull(); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueTrackerIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueTrackerIntegrationTests.java index 7e85c82..1af36cd 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueTrackerIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueTrackerIntegrationTests.java @@ -17,20 +17,19 @@ package org.springframework.data.release.issues.github; import static com.github.tomakehurst.wiremock.client.WireMock.*; import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.*; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; +import static org.assertj.core.api.Assumptions.*; -import java.util.Arrays; import java.util.Collection; +import java.util.Collections; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; -import org.hamcrest.Matchers; -import org.junit.Assume; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.ExpectedException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; +import org.springframework.data.release.WireMockExtension; import org.springframework.data.release.issues.Ticket; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; @@ -43,34 +42,31 @@ import org.springframework.web.util.UriComponentsBuilder; import com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder; import com.github.tomakehurst.wiremock.common.ClasspathFileSource; -import com.github.tomakehurst.wiremock.junit.WireMockRule; /** - * Integration Tests for {@link GitHub} using a local {@link WireMockRule} server. + * Integration Tests for {@link GitHub} using a local {@link WireMockExtension} server. * * @author Mark Paluch */ -public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests { +class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests { - public static final String ISSUES_URI = "/repos/spring-projects/spring-data-build/issues"; - public static final String RELEASE_TICKET_URI = "/repos/spring-projects/spring-data-build/issues/233"; - public static final String MILESTONES_URI = "/repos/spring-projects/spring-data-build/milestones"; - public static final ModuleIteration BUILD_HOPPER_RC1 = ReleaseTrains.HOPPER.getModuleIteration(Projects.BUILD, + static final String ISSUES_URI = "/repos/spring-projects/spring-data-build/issues"; + static final String RELEASE_TICKET_URI = "/repos/spring-projects/spring-data-build/issues/233"; + static final String MILESTONES_URI = "/repos/spring-projects/spring-data-build/milestones"; + static final ModuleIteration BUILD_HOPPER_RC1 = ReleaseTrains.HOPPER.getModuleIteration(Projects.BUILD, Iteration.RC1); - @Rule public WireMockRule mockService = new WireMockRule( + @RegisterExtension WireMockExtension mockService = new WireMockExtension( wireMockConfig().port(8888).fileSource(new ClasspathFileSource("integration/github"))); - @Rule public ExpectedException expectedException = ExpectedException.none(); - @Autowired GitHub github; @Autowired GitHubProperties properties; - @Before - public void before() throws Exception { + @BeforeEach + void before() { UriComponents uriComponents = UriComponentsBuilder.fromUriString(properties.getApiUrl()).build(); - Assume.assumeThat(uriComponents.getHost(), is("localhost")); + assumeThat(uriComponents.getHost()).isEqualTo("localhost"); github.reset(); } @@ -79,83 +75,79 @@ public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests * @see #5 */ @Test - public void findTicketsByTicketIds() throws Exception { + void findTicketsByTicketIds() { mockGetIssueWith("issue.json", 233); - Collection tickets = github.findTickets(Projects.BUILD, Arrays.asList("233")); - assertThat(tickets, hasSize(1)); + Collection tickets = github.findTickets(Projects.BUILD, Collections.singletonList("233")); + assertThat(tickets).hasSize(1); } /** * @see #5 */ @Test - public void ignoresUnknownTicketsByTicketId() throws Exception { + void ignoresUnknownTicketsByTicketId() { - Collection tickets = github.findTickets(Projects.BUILD, Arrays.asList("123")); - assertThat(tickets, hasSize(0)); + Collection tickets = github.findTickets(Projects.BUILD, Collections.singletonList("123")); + assertThat(tickets).hasSize(0); } /** * @see #5 */ @Test - public void emptyResultWithEmptyTicketIds() throws Exception { + void emptyResultWithEmptyTicketIds() { - Collection tickets = github.findTickets(Projects.COMMONS, Arrays.asList()); - assertThat(tickets, hasSize(0)); + Collection tickets = github.findTickets(Projects.COMMONS, Collections.emptyList()); + assertThat(tickets).hasSize(0); } /** * @see #5 */ @Test - public void getReleaseTicketForReturnsTheReleaseTicket() throws Exception { + void getReleaseTicketForReturnsTheReleaseTicket() { mockGetMilestonesWith("milestones.json"); mockGetIssuesWith("issues.json"); Ticket releaseTicket = github.getReleaseTicketFor(BUILD_HOPPER_RC1); - assertThat(releaseTicket.getId(), is(Matchers.equalTo("#233"))); + assertThat(releaseTicket.getId()).isEqualTo("#233"); } /** * @see #5 */ @Test - public void noReleaseTicketFound() throws Exception { - - expectedException.expect(IllegalStateException.class); - expectedException.expectMessage("No milestone for Spring Data Build found containing 1.8 RC1!"); + void noReleaseTicketFound() { mockGetMilestonesWith("emptyMilestones.json"); - github.getReleaseTicketFor(BUILD_HOPPER_RC1); - - fail("Missing IllegalStateException"); + assertThatIllegalArgumentException().isThrownBy(() -> github.getReleaseTicketFor(BUILD_HOPPER_RC1)) + .withMessageContaining("No milestone for Spring Data Build found containing 1.8 RC1!"); } /** * @see #5 */ @Test - public void createReleaseVersionShouldCreateAVersion() throws Exception { + void createReleaseVersionShouldCreateAVersion() { mockGetMilestonesWith("emptyMilestones.json"); mockCreateMilestoneWith("milestone.json"); github.createReleaseVersion(BUILD_HOPPER_RC1); - verify(postRequestedFor(urlPathMatching(MILESTONES_URI)).withRequestBody( - equalToJson("{\"title\":\"1.8 RC1 (Hopper)\", \"description\":\"Hopper RC1\"}"))); + verify(postRequestedFor(urlPathMatching(MILESTONES_URI)) + .withRequestBody(equalToJson("{\"title\":\"1.8 RC1 (Hopper)\", \"description\":\"Hopper RC1\"}"))); } /** * @see #5 */ @Test - public void createReleaseVersionShouldFindExistingReleaseVersion() throws Exception { + void createReleaseVersionShouldFindExistingReleaseVersion() { mockGetMilestonesWith("milestones.json"); @@ -168,7 +160,7 @@ public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests * @see #5 */ @Test - public void createReleaseTicketShouldCreateReleaseTicket() throws Exception { + void createReleaseTicketShouldCreateReleaseTicket() { mockGetMilestonesWith("milestones.json"); mockGetIssuesWith("emptyIssues.json"); @@ -184,26 +176,22 @@ public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests * @see #5 */ @Test - public void createReleaseTicketShouldFailWithNoReleaseVersion() throws Exception { - - expectedException.expect(IllegalStateException.class); - expectedException.expectMessage("No milestone for Spring Data Build found containing 1.8 RC1!"); + void createReleaseTicketShouldFailWithNoReleaseVersion() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.BUILD, Iteration.RC1); mockGetIssuesWith("emptyIssues.json"); mockGetMilestonesWith("emptyMilestones.json"); - github.createReleaseTicket(moduleIteration); - - fail("Missing IllegalStateException"); + assertThatIllegalArgumentException().isThrownBy(() -> github.createReleaseTicket(moduleIteration)) + .withMessageContaining("No milestone for Spring Data Build found containing 1.8 RC1!"); } /** * @see #5 */ @Test - public void createReleaseTicketShouldFindExistingTicket() throws Exception { + void createReleaseTicketShouldFindExistingTicket() { mockGetMilestonesWith("milestones.json"); mockGetIssuesWith("issues.json"); @@ -217,7 +205,7 @@ public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests * @see #55 */ @Test - public void assignTicketToMe() { + void assignTicketToMe() { mockGetMilestonesWith("milestones.json"); mockGetIssuesWith("issues.json"); @@ -235,7 +223,7 @@ public class GitHubIssueTrackerIntegrationTests extends AbstractIntegrationTests * @see #94 */ @Test - public void closeIterationShouldResolveReleaseTicket() { + void closeIterationShouldResolveReleaseTicket() { mockGetMilestonesWith("milestones.json"); mockGetIssuesWith("issues.json"); diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueUnitTests.java index 5e92983..510a16c 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/github/GitHubIssueUnitTests.java @@ -19,27 +19,28 @@ import static org.assertj.core.api.Assertions.*; import java.io.IOException; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.json.JsonTest; import org.springframework.boot.test.json.JacksonTester; import org.springframework.data.release.issues.github.GitHubIssue.Milestone; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; /** * Unit tests for {@link GitHubIssue}. * * @author Mark Paluch */ -@RunWith(SpringRunner.class) @JsonTest -public class GitHubIssueUnitTests { +@ExtendWith(SpringExtension.class) +class GitHubIssueUnitTests { @Autowired private JacksonTester json; @Test - public void shouldNotRenderOpenProperty() throws IOException { + void shouldNotRenderOpenProperty() throws IOException { Milestone milestone = Milestone.of("my-title", "my-description"); diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/github/GithubMilestoneUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/github/GithubMilestoneUnitTests.java index 62a7f24..33ab619 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/github/GithubMilestoneUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/github/GithubMilestoneUnitTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.issues.github; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; import org.springframework.data.release.model.Projects; @@ -29,10 +29,10 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Mark Paluch */ -public class GithubMilestoneUnitTests { +class GithubMilestoneUnitTests { @Test - public void rendersGithubGaVersionCorrectly() { + void rendersGithubGaVersionCorrectly() { assertIterationVersion(Iteration.M1, "1.8 M1 (Dijkstra)"); assertIterationVersion(Iteration.RC1, "1.8 RC1 (Dijkstra)"); @@ -45,30 +45,30 @@ public class GithubMilestoneUnitTests { } @Test - public void usesCustomModuleIterationStartVersion() { + void usesCustomModuleIterationStartVersion() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.M1); GithubMilestone version = new GithubMilestone(module); - assertThat(version.toString(), is("1.0 M1 (Dijkstra)")); + assertThat(version.toString()).isEqualTo("1.0 M1 (Dijkstra)"); } @Test - public void doesNotUseCustomIterationOnNonFirstiterations() { + void doesNotUseCustomIterationOnNonFirstiterations() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.RC1); GithubMilestone version = new GithubMilestone(module); - assertThat(version.toString(), is("1.0 RC1 (Dijkstra)")); + assertThat(version.toString()).isEqualTo("1.0 RC1 (Dijkstra)"); } @Test - public void rendersDescriptionCorrectly() { + void rendersDescriptionCorrectly() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.M1); GithubMilestone version = new GithubMilestone(module); - assertThat(version.getDescription(), is("Dijkstra M2")); + assertThat(version.getDescription()).isEqualTo("Dijkstra M2"); } private void assertIterationVersion(Iteration iteration, String expected) { @@ -76,6 +76,6 @@ public class GithubMilestoneUnitTests { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.COMMONS, iteration); GithubMilestone version = new GithubMilestone(module); - assertThat(version.toString(), is(expected)); + assertThat(version.toString()).isEqualTo(expected); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraComponentsUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraComponentsUnitTests.java index 3ec945a..8b48e2c 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraComponentsUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraComponentsUnitTests.java @@ -13,55 +13,50 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.springframework.data.release.issues.jira; -import static org.hamcrest.core.Is.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import java.util.Collections; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * Unit tests for {@link JiraComponents}. * * @author Mark Paluch */ -public class JiraComponentsUnitTests { +class JiraComponentsUnitTests { /** * @see #5 */ @Test - public void returnsComponentByName() throws Exception { + void returnsComponentByName() { JiraComponent fooComponent = new JiraComponent("123", "foo"); JiraComponents jiraComponents = JiraComponents.of(Collections.singleton(fooComponent)); - assertThat(jiraComponents.findComponent("foo").isPresent(), is(true)); + assertThat(jiraComponents.findComponent("foo").isPresent()).isTrue(); } /** * @see #5 */ @Test - public void returnsEmptyIfComponentMissing() throws Exception { + void returnsEmptyIfComponentMissing() { JiraComponent fooComponent = new JiraComponent("123", "foo"); JiraComponents jiraComponents = JiraComponents.of(Collections.singleton(fooComponent)); - assertThat(jiraComponents.findComponent("baz").isPresent(), is(false)); + assertThat(jiraComponents.findComponent("baz").isPresent()).isFalse(); } /** * @see #5 */ - @Test(expected = IllegalArgumentException.class) - public void failsOnNullArgumentConstruction() throws Exception { - - JiraComponents.of(null); - - fail("Missing IllegalArgumentException"); + @Test + void failsOnNullArgumentConstruction() { + assertThatIllegalArgumentException().isThrownBy(() -> JiraComponents.of(null)); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraConnectorIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraConnectorIntegrationTests.java index 01a7d2a..0865727 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraConnectorIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraConnectorIntegrationTests.java @@ -17,21 +17,20 @@ package org.springframework.data.release.issues.jira; import static com.github.tomakehurst.wiremock.client.WireMock.*; import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.*; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; +import static org.assertj.core.api.Assumptions.*; import java.util.Arrays; import java.util.Collection; import java.util.Optional; -import org.hamcrest.Matchers; -import org.junit.Assume; -import org.junit.Before; -import org.junit.Rule; -import org.junit.Test; -import org.junit.rules.ExpectedException; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; +import org.springframework.data.release.WireMockExtension; import org.springframework.data.release.issues.Ticket; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; @@ -45,14 +44,13 @@ import org.springframework.web.util.UriComponentsBuilder; import com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder; import com.github.tomakehurst.wiremock.common.ClasspathFileSource; -import com.github.tomakehurst.wiremock.junit.WireMockRule; /** - * Integration Tests for {@link Jira} using a local {@link WireMockRule} server. + * Integration Tests for {@link Jira} using a local {@link WireMockExtension} server. * * @author Mark Paluch */ -public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { +class JiraConnectorIntegrationTests extends AbstractIntegrationTests { static final String CREATE_ISSUE_URI = "/rest/api/2/issue"; static final String CREATE_VERSION_URI = "/rest/api/2/version"; @@ -62,19 +60,17 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { static final String PROJECT_COMPONENTS_URI = "/rest/api/2/project/%s/components"; static final ModuleIteration REST_HOPPER_RC1 = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); - @Rule public WireMockRule mockService = new WireMockRule( + @RegisterExtension WireMockExtension mockService = new WireMockExtension( wireMockConfig().port(8888).fileSource(new ClasspathFileSource("integration/jira"))); - @Rule public ExpectedException expectedException = ExpectedException.none(); - @Autowired JiraConnector jira; @Autowired JiraProperties properties; - @Before - public void before() throws Exception { + @BeforeEach + void before() { UriComponents uriComponents = UriComponentsBuilder.fromUriString(properties.getApiUrl()).build(); - Assume.assumeThat(uriComponents.getHost(), is("localhost")); + assumeThat(uriComponents.getHost()).isEqualTo("localhost"); properties.setUsername("dummy"); jira.reset(); @@ -84,83 +80,79 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5 */ @Test - public void findResolvedTicketsByTicketIds() throws Exception { + void findResolvedTicketsByTicketIds() { mockSearchWith("DATAREDIS-1andDATAJPA-1.json"); Collection tickets = jira.findTickets(Projects.COMMONS, Arrays.asList("DATAREDIS-1", "DATAJPA-1")); - assertThat(tickets, hasSize(2)); + assertThat(tickets).hasSize(2); } /** * @see #5 */ @Test - public void ignoresUnknownTicketsByTicketId() throws Exception { + void ignoresUnknownTicketsByTicketId() { mockSearchWith("emptyTickets.json"); Collection tickets = jira.findTickets(Projects.COMMONS, Arrays.asList("XYZ-1", "UNKOWN-1")); - assertThat(tickets, hasSize(0)); + assertThat(tickets).hasSize(0); } /** * @see #5 */ @Test - public void emptyResultWithEmptyTicketIds() throws Exception { + void emptyResultWithEmptyTicketIds() { Collection tickets = jira.findTickets(Projects.COMMONS, Arrays.asList()); - assertThat(tickets, hasSize(0)); + assertThat(tickets).hasSize(0); } /** * @see #5 */ @Test - public void getReleaseTicketForReturnsTheReleaseTicket() throws Exception { + void getReleaseTicketForReturnsTheReleaseTicket() { mockSearchWith("releaseTickets.json"); Ticket releaseTicket = jira.getReleaseTicketFor(REST_HOPPER_RC1); - assertThat(releaseTicket.getId(), is(Matchers.equalTo("DATAREST-782"))); + assertThat(releaseTicket.getId()).isEqualTo("DATAREST-782"); } /** * @see #5 */ @Test - public void noReleaseTicketFound() throws Exception { - - expectedException.expect(IllegalArgumentException.class); - expectedException.expectMessage("Did not find a release ticket for Spring Data REST 2.5 RC1"); + void noReleaseTicketFound() { mockSearchWith("emptyTickets.json"); - jira.getReleaseTicketFor(REST_HOPPER_RC1); - - fail("Missing IllegalStateException"); + assertThatIllegalArgumentException().isThrownBy(() -> jira.getReleaseTicketFor(REST_HOPPER_RC1)) + .withMessageContaining("Did not find a release ticket for Spring Data REST 2.5 RC1"); } /** * @see #5 */ @Test - public void getReleaseVersion() throws Exception { + void getReleaseVersion() { mockGetProjectVersionsWith("releaseVersions.json", REST_HOPPER_RC1.getProjectKey()); Optional optional = jira.findJiraReleaseVersion(REST_HOPPER_RC1); - assertThat(optional.isPresent(), is(true)); - assertThat(optional.get().getName(), is(Matchers.equalTo("2.5 RC1 (Hopper)"))); + assertThat(optional.isPresent()).isTrue(); + assertThat(optional.get().getName()).isEqualTo("2.5 RC1 (Hopper)"); } /** * @see #5 */ @Test - public void createReleaseVersionShouldCreateAVersion() throws Exception { + void createReleaseVersionShouldCreateAVersion() { mockGetProjectVersionsWith("emptyReleaseVersions.json", REST_HOPPER_RC1.getProjectKey()); mockCreateVersionWith("versionCreated.json"); @@ -175,7 +167,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5 */ @Test - public void createReleaseVersionShouldFindExistingReleaseVersion() throws Exception { + void createReleaseVersionShouldFindExistingReleaseVersion() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -190,7 +182,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #56 */ @Test - public void archiveReleaseVersionShouldArchiveReleaseVersion() throws Exception { + void archiveReleaseVersionShouldArchiveReleaseVersion() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -209,7 +201,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5 */ @Test - public void createReleaseTicketShouldCreateReleaseTicket() throws Exception { + void createReleaseTicketShouldCreateReleaseTicket() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -231,7 +223,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5 */ @Test - public void createReleaseTicketShouldCreateReleaseTicketWithoutComponent() throws Exception { + void createReleaseTicketShouldCreateReleaseTicketWithoutComponent() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -252,26 +244,22 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5 */ @Test - public void createReleaseTicketShouldFailWithNoReleaseVersion() throws Exception { - - expectedException.expect(IllegalStateException.class); - expectedException.expectMessage("Did not find a release version for Spring Data REST 2.5 RC1"); + void createReleaseTicketShouldFailWithNoReleaseVersion() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); mockSearchWith("emptyTickets.json"); mockGetProjectVersionsWith("emptyReleaseVersions.json", moduleIteration.getProjectKey()); - jira.createReleaseTicket(moduleIteration); - - fail("Missing IllegalStateException"); + assertThatIllegalStateException().isThrownBy(() -> jira.createReleaseTicket(moduleIteration)) + .withMessageContaining("Did not find a release version for Spring Data REST 2.5 RC1"); } /** * @see #5 */ @Test - public void createReleaseTicketShouldFindExistingTicket() throws Exception { + void createReleaseTicketShouldFindExistingTicket() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -288,7 +276,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5, #54 */ @Test - public void assignTicketToMe() { + void assignTicketToMe() { mockService.stubFor(get(urlPathMatching("/rest/api/2/issue/DATAREDIS-302")).// willReturn(json("existingTicket.json"))); @@ -306,7 +294,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #5, #53 */ @Test - public void skipTicketAssignmentIfAssigned() { + void skipTicketAssignmentIfAssigned() { properties.setUsername("mp911de"); @@ -325,7 +313,7 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { * @see #94 */ @Test - public void closeIterationShouldResolveReleaseTicket() { + void closeIterationShouldResolveReleaseTicket() { ModuleIteration moduleIteration = ReleaseTrains.HOPPER.getModuleIteration(Projects.REST, Iteration.RC1); @@ -337,9 +325,12 @@ public class JiraConnectorIntegrationTests extends AbstractIntegrationTests { mockService.stubFor(get(urlPathMatching("/rest/api/2/issue/DATAREST-782")).// willReturn(json("releaseTicket.json"))); + mockService.stubFor(post(urlPathMatching("/rest/api/2/issue/DATAREST-782/transitions")) // + .willReturn(ResponseDefinitionBuilder.responseDefinition().withStatus(200))); + jira.closeIteration(moduleIteration); - verify(postRequestedFor(urlPathMatching("/rest/api/2/issue/DATAREST-782")).withRequestBody( + verify(postRequestedFor(urlPathMatching("/rest/api/2/issue/DATAREST-782/transitions")).withRequestBody( equalToJson("{\"update\":{},\"transition\":{\"id\":5},\"fields\":{\"resolution\":{\"name\":\"Complete\"}}}"))); } diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraVersionUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraVersionUnitTests.java index 4dfbfd0..ccaa3f5 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraVersionUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/jira/JiraVersionUnitTests.java @@ -15,10 +15,10 @@ */ package org.springframework.data.release.issues.jira; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; + +import org.junit.jupiter.api.Test; -import org.junit.Test; import org.springframework.data.release.model.Iteration; import org.springframework.data.release.model.ModuleIteration; import org.springframework.data.release.model.Projects; @@ -29,10 +29,10 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Oliver Gierke */ -public class JiraVersionUnitTests { +class JiraVersionUnitTests { @Test - public void rendersJiraGaVersionCorrectly() { + void rendersJiraGaVersionCorrectly() { assertIterationVersion(Iteration.M1, "1.8 M1 (Dijkstra)"); assertIterationVersion(Iteration.RC1, "1.8 RC1 (Dijkstra)"); @@ -45,30 +45,30 @@ public class JiraVersionUnitTests { } @Test - public void usesCustomModuleIterationStartVersion() { + void usesCustomModuleIterationStartVersion() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.M1); JiraVersion version = new JiraVersion(module); - assertThat(version.toString(), is("1.0 M1 (Dijkstra)")); + assertThat(version.toString()).isEqualTo("1.0 M1 (Dijkstra)"); } @Test - public void doesNotUseCustomIterationOnNonFirstiterations() { + void doesNotUseCustomIterationOnNonFirstiterations() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.RC1); JiraVersion version = new JiraVersion(module); - assertThat(version.toString(), is("1.0 RC1 (Dijkstra)")); + assertThat(version.toString()).isEqualTo("1.0 RC1 (Dijkstra)"); } @Test - public void rendersDescriptionCorrectly() { + void rendersDescriptionCorrectly() { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.ELASTICSEARCH, Iteration.M1); JiraVersion version = new JiraVersion(module); - assertThat(version.getDescription(), is("Dijkstra M2")); + assertThat(version.getDescription()).isEqualTo("Dijkstra M2"); } private void assertIterationVersion(Iteration iteration, String expected) { @@ -76,6 +76,6 @@ public class JiraVersionUnitTests { ModuleIteration module = ReleaseTrains.DIJKSTRA.getModuleIteration(Projects.COMMONS, iteration); JiraVersion version = new JiraVersion(module); - assertThat(version.toString(), is(expected)); + assertThat(version.toString()).isEqualTo(expected); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/issues/jira/TicketsUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/issues/jira/TicketsUnitTests.java index f99c831..62c2f39 100644 --- a/release-tools/src/test/java/org/springframework/data/release/issues/jira/TicketsUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/issues/jira/TicketsUnitTests.java @@ -13,16 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - package org.springframework.data.release.issues.jira; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; -import static org.springframework.test.util.AssertionErrors.fail; +import static org.assertj.core.api.Assertions.*; import java.util.Collections; -import org.junit.Test; +import org.junit.jupiter.api.Test; + import org.springframework.data.release.issues.Ticket; import org.springframework.data.release.issues.Tickets; import org.springframework.data.release.model.Iteration; @@ -34,68 +32,68 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Mark Paluch */ -public class TicketsUnitTests { +class TicketsUnitTests { @Test - public void hasReleaseTicketShouldReturnTrue() throws Exception { + void hasReleaseTicketShouldReturnTrue() { Ticket ticket = new Ticket("1234", "Release 1.10 GA (Hopper)", JiraTicketStatus.of(false, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); boolean result = tickets.hasReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA)); - assertThat(result, is(true)); + assertThat(result).isTrue(); } @Test - public void hasReleaseTickeForTicketWithoutTrainNameShouldReturnFalse() throws Exception { + void hasReleaseTickeForTicketWithoutTrainNameShouldReturnFalse() { Ticket ticket = new Ticket("1234", "Release 1.10 GA", JiraTicketStatus.of(false, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); boolean result = tickets.hasReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA)); - assertThat(result, is(false)); + assertThat(result).isFalse(); } @Test - public void getReleaseTicketReturnsReleaseTicket() throws Exception { + void getReleaseTicketReturnsReleaseTicket() { Ticket ticket = new Ticket("1234", "Release 1.10 GA (Hopper)", JiraTicketStatus.of(false, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); Ticket releaseTicket = tickets .getReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA)); - assertThat(releaseTicket, is(ticket)); + assertThat(releaseTicket).isEqualTo(ticket); } - @Test(expected = IllegalStateException.class) - public void getReleaseTicketThrowsExceptionWithoutAReleaseTicket() throws Exception { + @Test + void getReleaseTicketThrowsExceptionWithoutAReleaseTicket() { Ticket ticket = new Ticket("1234", "Release 1.10 GA", JiraTicketStatus.of(false, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); - tickets.getReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA)); - fail("Missing IllegalStateException"); + assertThatIllegalArgumentException().isThrownBy( + () -> tickets.getReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA))); } @Test - public void getResolvedReleaseTicket() throws Exception { + void getResolvedReleaseTicket() { Ticket ticket = new Ticket("1234", "Release 1.10 GA (Hopper)", JiraTicketStatus.of(true, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); Ticket releaseTicket = tickets .getReleaseTicket(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA)); - assertThat(releaseTicket, is(ticket)); + assertThat(releaseTicket).isEqualTo(ticket); } @Test - public void getReleaseTicketsReturnsReleaseTickets() throws Exception { + void getReleaseTicketsReturnsReleaseTickets() { Ticket ticket = new Ticket("1234", "Release 1.10 GA (Hopper)", JiraTicketStatus.of(false, "", "")); Tickets tickets = new Tickets(Collections.singletonList(ticket)); Tickets result = tickets .getReleaseTickets(ReleaseTrains.HOPPER.getModuleIteration(Projects.JPA, Iteration.GA).getTrainIteration()); - assertThat(result.getTickets().contains(ticket), is(true)); + assertThat(result.getTickets().contains(ticket)).isTrue(); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/model/ArtifactVersionUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/model/ArtifactVersionUnitTests.java index c0f1f3e..dbcc24e 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/ArtifactVersionUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/ArtifactVersionUnitTests.java @@ -15,113 +15,114 @@ */ package org.springframework.data.release.model; -import static org.hamcrest.Matchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.assertj.core.api.Assertions; +import org.junit.jupiter.api.Test; /** * @author Oliver Gierke */ -public class ArtifactVersionUnitTests { +class ArtifactVersionUnitTests { - @Test(expected = IllegalArgumentException.class) - public void rejectsInvalidVersionSuffix() { - ArtifactVersion.of("1.4.5.GA"); + @Test + void rejectsInvalidVersionSuffix() { + Assertions.assertThatIllegalArgumentException().isThrownBy(() -> ArtifactVersion.of("1.4.5.GA")); } @Test - public void parsesReleaseVersionCorrectly() { + void parsesReleaseVersionCorrectly() { ArtifactVersion version = ArtifactVersion.of("1.4.5.RELEASE"); - assertThat(version.isReleaseVersion(), is(true)); - assertThat(version.getNextDevelopmentVersion(), is(ArtifactVersion.of("1.4.6.BUILD-SNAPSHOT"))); + assertThat(version.isReleaseVersion()).isTrue(); + assertThat(version.getNextDevelopmentVersion()).isEqualTo(ArtifactVersion.of("1.4.6.BUILD-SNAPSHOT")); } @Test - public void createsMilestoneVersionCorrectly() { + void createsMilestoneVersionCorrectly() { ArtifactVersion version = ArtifactVersion.of("1.4.5.M1"); - assertThat(version.isReleaseVersion(), is(false)); - assertThat(version.isMilestoneVersion(), is(true)); + assertThat(version.isReleaseVersion()).isFalse(); + assertThat(version.isMilestoneVersion()).isTrue(); } @Test - public void createsReleaseVersionByDefault() { + void createsReleaseVersionByDefault() { ArtifactVersion version = ArtifactVersion.of(Version.of(1, 4, 5)); - assertThat(version.isReleaseVersion(), is(true)); - assertThat(version.toString(), is("1.4.5.RELEASE")); + assertThat(version.isReleaseVersion()).isTrue(); + assertThat(version.toString()).isEqualTo("1.4.5.RELEASE"); } @Test - public void createsMilestoneVersionFromIteration() { + void createsMilestoneVersionFromIteration() { IterationVersion oneFourMilestoneOne = new SimpleIterationVersion(Version.of(1, 4), Iteration.M1); ArtifactVersion version = ArtifactVersion.of(oneFourMilestoneOne); - assertThat(version.isMilestoneVersion(), is(true)); - assertThat(version.toString(), is("1.4.0.M1")); + assertThat(version.isMilestoneVersion()).isTrue(); + assertThat(version.toString()).isEqualTo("1.4.0.M1"); } @Test - public void createsReleaseVersionFromIteration() { + void createsReleaseVersionFromIteration() { IterationVersion oneFourGA = new SimpleIterationVersion(Version.of(1, 4), Iteration.GA); ArtifactVersion version = ArtifactVersion.of(oneFourGA); - assertThat(version.isReleaseVersion(), is(true)); - assertThat(version.toString(), is("1.4.0.RELEASE")); + assertThat(version.isReleaseVersion()).isTrue(); + assertThat(version.toString()).isEqualTo("1.4.0.RELEASE"); } @Test - public void createsServiceReleaseVersionFromIteration() { + void createsServiceReleaseVersionFromIteration() { IterationVersion oneFourServiceReleaseTwo = new SimpleIterationVersion(Version.of(1, 4), Iteration.SR2); ArtifactVersion version = ArtifactVersion.of(oneFourServiceReleaseTwo); - assertThat(version.isReleaseVersion(), is(true)); - assertThat(version.toString(), is("1.4.2.RELEASE")); + assertThat(version.isReleaseVersion()).isTrue(); + assertThat(version.toString()).isEqualTo("1.4.2.RELEASE"); } @Test - public void returnsNextMinorSnapshotVersionForGARelease() { + void returnsNextMinorSnapshotVersionForGARelease() { ArtifactVersion version = ArtifactVersion.of("1.5.0.RELEASE").getNextDevelopmentVersion(); - assertThat(version.isMilestoneVersion(), is(false)); - assertThat(version.isReleaseVersion(), is(false)); - assertThat(version, is(ArtifactVersion.of("1.6.0.BUILD-SNAPSHOT"))); + assertThat(version.isMilestoneVersion()).isFalse(); + assertThat(version.isReleaseVersion()).isFalse(); + assertThat(version).isEqualTo(ArtifactVersion.of("1.6.0.BUILD-SNAPSHOT")); } @Test - public void ordersCorrectly() { + void ordersCorrectly() { ArtifactVersion oneNine = ArtifactVersion.of("1.9.0.RELEASE"); ArtifactVersion oneTen = ArtifactVersion.of("1.10.0.RELEASE"); - assertThat(oneNine.compareTo(oneTen), is(lessThan(0))); + assertThat(oneNine.compareTo(oneTen)).isLessThan(0); } @Test - public void ordersSnapshotsOfSameVersionSmaller() { + void ordersSnapshotsOfSameVersionSmaller() { ArtifactVersion oneTenRelease = ArtifactVersion.of("1.10.0.RELEASE"); ArtifactVersion oneTenSnapshot = ArtifactVersion.of("1.10.0.BUILD-SNAPSHOT"); - assertThat(oneTenRelease.compareTo(oneTenSnapshot), is(greaterThan(0))); + assertThat(oneTenRelease.compareTo(oneTenSnapshot)).isGreaterThan(0); } @Test - public void returnsCorrectBugfixVersions() { + void returnsCorrectBugfixVersions() { - assertThat(ArtifactVersion.of("1.0.0.RELEASE").getNextBugfixVersion(), - is(ArtifactVersion.of("1.0.1.BUILD-SNAPSHOT"))); - assertThat(ArtifactVersion.of("1.0.0.M1").getNextBugfixVersion(), is(ArtifactVersion.of("1.0.0.BUILD-SNAPSHOT"))); - assertThat(ArtifactVersion.of("1.0.1.RELEASE").getNextBugfixVersion(), - is(ArtifactVersion.of("1.0.2.BUILD-SNAPSHOT"))); + assertThat(ArtifactVersion.of("1.0.0.RELEASE").getNextBugfixVersion()) + .isEqualTo(ArtifactVersion.of("1.0.1.BUILD-SNAPSHOT")); + assertThat(ArtifactVersion.of("1.0.0.M1").getNextBugfixVersion()) + .isEqualTo(ArtifactVersion.of("1.0.0.BUILD-SNAPSHOT")); + assertThat(ArtifactVersion.of("1.0.1.RELEASE").getNextBugfixVersion()) + .isEqualTo(ArtifactVersion.of("1.0.2.BUILD-SNAPSHOT")); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/model/CalverVersionUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/model/CalverVersionUnitTests.java index 928415b..ca8dfd6 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/CalverVersionUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/CalverVersionUnitTests.java @@ -17,17 +17,17 @@ package org.springframework.data.release.model; import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * Unit tests for {@link Calver}. * * @author Mark Paluch */ -public class CalverVersionUnitTests { +class CalverVersionUnitTests { @Test - public void shouldParseRelease() { + void shouldParseRelease() { Calver version = Calver.parse("2020.0.1"); @@ -37,7 +37,7 @@ public class CalverVersionUnitTests { } @Test - public void shouldParseM1Release() { + void shouldParseM1Release() { Calver version = Calver.parse("2020.0.1-M1"); @@ -48,7 +48,7 @@ public class CalverVersionUnitTests { } @Test - public void shouldCompareReleasesCorrectly() { + void shouldCompareReleasesCorrectly() { Calver version = Calver.parse("2020.0.1-RC2"); @@ -66,7 +66,7 @@ public class CalverVersionUnitTests { } @Test - public void shouldParseSnapshot() { + void shouldParseSnapshot() { Calver version = Calver.parse("2020.0.1-SNAPSHOT"); diff --git a/release-tools/src/test/java/org/springframework/data/release/model/IterationUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/model/IterationUnitTests.java index d78738d..baeae10 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/IterationUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/IterationUnitTests.java @@ -17,17 +17,17 @@ package org.springframework.data.release.model; import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * Unit tests for {@link Iteration}. * * @author Mark Paluch */ -public class IterationUnitTests { +class IterationUnitTests { @Test - public void shouldCompareMilestoneIterationsCorrectly() { + void shouldCompareMilestoneIterationsCorrectly() { assertThat(Iteration.M1).isEqualByComparingTo(Iteration.M1); assertThat(Iteration.M1).isLessThan(Iteration.RC1); @@ -39,7 +39,7 @@ public class IterationUnitTests { } @Test - public void shouldCompareReleaseCandidateIterationsCorrectly() { + void shouldCompareReleaseCandidateIterationsCorrectly() { assertThat(Iteration.RC1).isGreaterThan(Iteration.M1); assertThat(Iteration.RC1).isEqualByComparingTo(Iteration.RC1); @@ -51,7 +51,7 @@ public class IterationUnitTests { } @Test - public void shouldCompareGAIterationsCorrectly() { + void shouldCompareGAIterationsCorrectly() { assertThat(Iteration.GA).isGreaterThan(Iteration.M1); assertThat(Iteration.GA).isGreaterThan(Iteration.RC1); @@ -60,7 +60,7 @@ public class IterationUnitTests { } @Test - public void shouldCompareServiceReleaseIterationsCorrectly() { + void shouldCompareServiceReleaseIterationsCorrectly() { assertThat(Iteration.SR1).isGreaterThan(Iteration.M1); assertThat(Iteration.SR1).isGreaterThan(Iteration.RC1); diff --git a/release-tools/src/test/java/org/springframework/data/release/model/ModuleIterationUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/model/ModuleIterationUnitTests.java index 89b7ea4..b71ea23 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/ModuleIterationUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/ModuleIterationUnitTests.java @@ -15,35 +15,34 @@ */ package org.springframework.data.release.model; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * @author Oliver Gierke */ -public class ModuleIterationUnitTests { +class ModuleIterationUnitTests { @Test - public void abbreviatesTrailingZerosForNonServiceReleases() { + void abbreviatesTrailingZerosForNonServiceReleases() { TrainIteration iteration = new TrainIteration(ReleaseTrains.DIJKSTRA, Iteration.M1); ModuleIteration module = iteration.getModule(Projects.JPA); - assertThat(module.getShortVersionString(), is("1.6 M1")); - assertThat(module.getMediumVersionString(), is("1.6 M1 (Dijkstra)")); - assertThat(module.getFullVersionString(), is("1.6.0.M1 (Dijkstra M1)")); + assertThat(module.getShortVersionString()).isEqualTo("1.6 M1"); + assertThat(module.getMediumVersionString()).isEqualTo("1.6 M1 (Dijkstra)"); + assertThat(module.getFullVersionString()).isEqualTo("1.6.0.M1 (Dijkstra M1)"); } @Test - public void doesNotListIterationSuffixForServiceReleases() { + void doesNotListIterationSuffixForServiceReleases() { TrainIteration iteration = new TrainIteration(ReleaseTrains.DIJKSTRA, Iteration.SR1); ModuleIteration module = iteration.getModule(Projects.JPA); - assertThat(module.getShortVersionString(), is("1.6.1")); - assertThat(module.getMediumVersionString(), is("1.6.1 (Dijkstra SR1)")); - assertThat(module.getFullVersionString(), is("1.6.1.RELEASE (Dijkstra SR1)")); + assertThat(module.getShortVersionString()).isEqualTo("1.6.1"); + assertThat(module.getMediumVersionString()).isEqualTo("1.6.1 (Dijkstra SR1)"); + assertThat(module.getFullVersionString()).isEqualTo("1.6.1.RELEASE (Dijkstra SR1)"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/model/ProjectUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/model/ProjectUnitTests.java index 10d4ac6..7d034bf 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/ProjectUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/ProjectUnitTests.java @@ -15,22 +15,20 @@ */ package org.springframework.data.release.model; -import static org.assertj.core.api.Assertions.assertThat; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.assertThat; +import static org.assertj.core.api.Assertions.*; import java.util.ArrayList; import java.util.List; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * @author Oliver Gierke */ -public class ProjectUnitTests { +class ProjectUnitTests { @Test - public void testname() { + void testname() { List projects = new ArrayList<>(Projects.PROJECTS); // Collections.reverse(projects); @@ -38,27 +36,27 @@ public class ProjectUnitTests { projects.stream().map(Project::getName).forEach(System.out::println); - assertThat(projects.get(0), is(Projects.BUILD)); - assertThat(projects.get(1), is(Projects.COMMONS)); + assertThat(projects.get(0)).isEqualTo(Projects.BUILD); + assertThat(projects.get(1)).isEqualTo(Projects.COMMONS); } /** * @see #28 */ @Test - public void findsProjectByKey() { - assertThat(Projects.requiredByName("DATACMNS"), is(Projects.COMMONS)); + void findsProjectByKey() { + assertThat(Projects.requiredByName("DATACMNS")).isEqualTo(Projects.COMMONS); } @Test - public void returnsCustomFullNameIfSet() { + void returnsCustomFullNameIfSet() { - assertThat(Projects.BUILD.getFullName(), is("Spring Data Build")); - assertThat(Projects.CASSANDRA.getFullName(), is("Spring Data for Apache Cassandra")); + assertThat(Projects.BUILD.getFullName()).isEqualTo("Spring Data Build"); + assertThat(Projects.CASSANDRA.getFullName()).isEqualTo("Spring Data for Apache Cassandra"); } @Test - public void returnsAllDependencies() { + void returnsAllDependencies() { assertThat(Projects.REDIS.getDependencies())// .contains(Projects.COMMONS, Projects.KEY_VALUE, Projects.BUILD); diff --git a/release-tools/src/test/java/org/springframework/data/release/model/TrackerTest.java b/release-tools/src/test/java/org/springframework/data/release/model/TrackerTest.java index 96d3786..4cbd341 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/TrackerTest.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/TrackerTest.java @@ -16,47 +16,45 @@ package org.springframework.data.release.model; -import static org.hamcrest.core.Is.*; -import static org.hamcrest.core.IsEqual.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * @author Mark Paluch */ -public class TrackerTest { +class TrackerTest { @Test - public void testMatchesTicketNumber() throws Exception { + void testMatchesTicketNumber() throws Exception { Pattern pattern = Pattern.compile(Tracker.JIRA.getTicketPattern()); Matcher matcher = pattern.matcher("DATAREDIS-1"); matcher.find(); - assertThat(matcher.group(1), is(equalTo("DATAREDIS-1"))); + assertThat(matcher.group(1)).isEqualTo("DATAREDIS-1"); } @Test - public void testMatchesBranchNamedLikeTicket() throws Exception { + void testMatchesBranchNamedLikeTicket() throws Exception { Pattern pattern = Pattern.compile(Tracker.JIRA.getTicketPattern()); Matcher matcher = pattern.matcher("issues/DATAREDIS-1-dummy"); matcher.find(); - assertThat(matcher.group(1), is(equalTo("DATAREDIS-1"))); + assertThat(matcher.group(1)).isEqualTo("DATAREDIS-1"); } @Test - public void testVersionBranch() throws Exception { + void testVersionBranch() throws Exception { Pattern pattern = Pattern.compile(Tracker.GITHUB.getTicketPattern()); Matcher matcher = pattern.matcher("1.2.x"); matcher.find(); - assertThat(matcher.group(1), is(equalTo("1"))); + assertThat(matcher.group(1)).isEqualTo("1"); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/model/TrainsUnitTest.java b/release-tools/src/test/java/org/springframework/data/release/model/TrainsUnitTest.java index c86a428..404a82d 100644 --- a/release-tools/src/test/java/org/springframework/data/release/model/TrainsUnitTest.java +++ b/release-tools/src/test/java/org/springframework/data/release/model/TrainsUnitTest.java @@ -15,28 +15,27 @@ */ package org.springframework.data.release.model; -import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; /** * Unit tests for release {@link Train}s. * * @author Oliver Gierke */ -public class TrainsUnitTest { +class TrainsUnitTest { @Test - public void prefersNewVersionOfAdditionalModule() { + void prefersNewVersionOfAdditionalModule() { Module module = ReleaseTrains.HOPPER.getModule(Projects.NEO4J); - assertThat(module.getVersion(), is(Version.parse("4.1"))); + assertThat(module.getVersion()).isEqualTo(Version.parse("4.1")); } @Test - public void addsNewlyAddedModule() { - assertThat(ReleaseTrains.HOPPER.getModule(Projects.ENVERS), is(notNullValue())); + void addsNewlyAddedModule() { + assertThat(ReleaseTrains.HOPPER.getModule(Projects.ENVERS)).isNotNull(); } } diff --git a/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionUnitTests.java index bf6aced..1031203 100644 --- a/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionUnitTests.java @@ -17,7 +17,7 @@ package org.springframework.data.release.sagan; import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.springframework.data.release.model.ArtifactVersion; import org.springframework.data.release.model.Projects; import org.springframework.data.release.model.ReleaseTrains; @@ -27,10 +27,10 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Oliver Gierke */ -public class MaintainedVersionUnitTests { +class MaintainedVersionUnitTests { @Test - public void newerVersionIsOrderedFirst() { + void newerVersionIsOrderedFirst() { MaintainedVersion ingalls = MaintainedVersion.of(Projects.COMMONS, ArtifactVersion.of("1.13.0.RELEASE"), ReleaseTrains.INGALLS); diff --git a/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionsUnitTests.java b/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionsUnitTests.java index bd65e2a..610d06b 100644 --- a/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionsUnitTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/sagan/MaintainedVersionsUnitTests.java @@ -17,7 +17,7 @@ package org.springframework.data.release.sagan; import static org.assertj.core.api.Assertions.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.springframework.data.release.model.ArtifactVersion; import org.springframework.data.release.model.Projects; import org.springframework.data.release.model.ReleaseTrains; @@ -27,10 +27,10 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Oliver Gierke */ -public class MaintainedVersionsUnitTests { +class MaintainedVersionsUnitTests { @Test - public void considersMostRecentReleaseVersionTheMainOne() { + void considersMostRecentReleaseVersionTheMainOne() { MaintainedVersion ingalls = MaintainedVersion.of(Projects.COMMONS, ArtifactVersion.of("1.13.0.RELEASE"), ReleaseTrains.INGALLS); diff --git a/release-tools/src/test/java/org/springframework/data/release/sagan/ProjectMetadataSerializationTests.java b/release-tools/src/test/java/org/springframework/data/release/sagan/ProjectMetadataSerializationTests.java index ac2c5ae..93d719d 100644 --- a/release-tools/src/test/java/org/springframework/data/release/sagan/ProjectMetadataSerializationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/sagan/ProjectMetadataSerializationTests.java @@ -15,7 +15,7 @@ */ package org.springframework.data.release.sagan; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.springframework.data.release.model.ArtifactVersion; import org.springframework.data.release.model.Projects; import org.springframework.data.release.model.ReleaseTrains; @@ -28,10 +28,10 @@ import com.fasterxml.jackson.databind.ObjectWriter; * * @author Oliver Gierke */ -public class ProjectMetadataSerializationTests { +class ProjectMetadataSerializationTests { @Test - public void serializesMaintainedVersionsIntoProjectMetadata() throws Exception { + void serializesMaintainedVersionsIntoProjectMetadata() throws Exception { ObjectWriter mapper = new ObjectMapper().writerWithDefaultPrettyPrinter(); diff --git a/release-tools/src/test/java/org/springframework/data/release/sagan/SaganOperationsIntegrationTests.java b/release-tools/src/test/java/org/springframework/data/release/sagan/SaganOperationsIntegrationTests.java index c27e090..8e09e41 100644 --- a/release-tools/src/test/java/org/springframework/data/release/sagan/SaganOperationsIntegrationTests.java +++ b/release-tools/src/test/java/org/springframework/data/release/sagan/SaganOperationsIntegrationTests.java @@ -15,8 +15,9 @@ */ package org.springframework.data.release.sagan; -import org.junit.Ignore; -import org.junit.Test; +import org.junit.jupiter.api.Disabled; +import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.release.AbstractIntegrationTests; import org.springframework.data.release.model.Projects; @@ -27,14 +28,14 @@ import org.springframework.data.release.model.ReleaseTrains; * * @author Oliver Gierke */ -@Ignore("I will write to production systems") -public class SaganOperationsIntegrationTests extends AbstractIntegrationTests { +@Disabled("I will write to production systems") +class SaganOperationsIntegrationTests extends AbstractIntegrationTests { @Autowired SaganOperations sagan; @Autowired SaganClient client; @Test - public void detectVersionsToUpdate() { + void detectVersionsToUpdate() { sagan.findVersions(ReleaseTrains.LOVELACE, ReleaseTrains.KAY, ReleaseTrains.INGALLS, ReleaseTrains.HOPPER) .forEach((project, versions) -> { @@ -53,12 +54,12 @@ public class SaganOperationsIntegrationTests extends AbstractIntegrationTests { } @Test - public void updateVersions() { + void updateVersions() { sagan.updateProjectMetadata(ReleaseTrains.KAY, ReleaseTrains.INGALLS, ReleaseTrains.HOPPER); } @Test - public void updateJpa() { + void updateJpa() { MaintainedVersions versions = sagan.findVersions(ReleaseTrains.KAY, ReleaseTrains.INGALLS, ReleaseTrains.HOPPER) .get(Projects.JPA); @@ -69,12 +70,12 @@ public class SaganOperationsIntegrationTests extends AbstractIntegrationTests { } @Test - public void getJpa() { + void getJpa() { System.out.println(client.getProjectMetadata(Projects.JPA)); } @Test - public void updateBuild() { + void updateBuild() { MaintainedVersions versions = sagan.findVersions(ReleaseTrains.KAY, ReleaseTrains.INGALLS, ReleaseTrains.HOPPER) .get(Projects.BUILD);