diff --git a/src/main/java/org/springframework/data/release/model/ArtifactVersion.java b/src/main/java/org/springframework/data/release/model/ArtifactVersion.java index 3e03c47..97b06aa 100644 --- a/src/main/java/org/springframework/data/release/model/ArtifactVersion.java +++ b/src/main/java/org/springframework/data/release/model/ArtifactVersion.java @@ -318,12 +318,17 @@ public class ArtifactVersion implements Comparable { return modifierFormat ? SNAPSHOT_MODIFIER : SNAPSHOT_SUFFIX; } - public String getMajorMinor() { + public String getMajorMinor(boolean includeSuffix) { + + if (includeSuffix && isSnapshotVersion()) { + return String.format("%s.%s-SNAPSHOT", version.getMajor(), version.getMinor()); + } + return String.format("%s.%s", version.getMajor(), version.getMinor()); } public String getGeneration() { - return String.format("%s.x", getMajorMinor()); + return String.format("%s.x", getMajorMinor(false)); } @Override diff --git a/src/main/java/org/springframework/data/release/model/DocumentationMetadata.java b/src/main/java/org/springframework/data/release/model/DocumentationMetadata.java index 9e2f70b..4026bea 100644 --- a/src/main/java/org/springframework/data/release/model/DocumentationMetadata.java +++ b/src/main/java/org/springframework/data/release/model/DocumentationMetadata.java @@ -114,7 +114,7 @@ public class DocumentationMetadata { } String format = this.project.isCommercial() ? COMMERCIAL_ANTORA_BASE : ANTORA_BASE; - return String.format(format, getProjectName(project), version.getMajorMinor()); + return String.format(format, getProjectName(project), this.version.getMajorMinor(true)); } public String getVersionOrTrainName(Train train) { diff --git a/src/test/java/org/springframework/data/release/model/DocumentationMetadataUnitTests.java b/src/test/java/org/springframework/data/release/model/DocumentationMetadataUnitTests.java index 20c4764..e714ab3 100644 --- a/src/test/java/org/springframework/data/release/model/DocumentationMetadataUnitTests.java +++ b/src/test/java/org/springframework/data/release/model/DocumentationMetadataUnitTests.java @@ -48,6 +48,17 @@ class DocumentationMetadataUnitTests { assertThat(metadata.getReferenceDocUrl()).isEqualTo("https://docs.spring.io/spring-data/mongodb/reference/3.1/"); } + @Test // gh-91 + void shouldReportCorrectAntoraSnapshotDocumentationUrls() { + + DocumentationMetadata metadata = DocumentationMetadata.of(DocumentationFormat.ANTORA, + SupportedProject.of(Projects.MONGO_DB, SupportStatus.OSS), ArtifactVersion.of("3.1.0-SNAPSHOT"), false); + + assertThat(metadata.getApiDocUrl()).isEmpty(); + assertThat(metadata.getReferenceDocUrl()) + .isEqualTo("https://docs.spring.io/spring-data/mongodb/reference/3.1-SNAPSHOT/"); + } + @Test // gh-197 void shouldReportCorrectCurrentDocumentationUrls() {