mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-07-05 00:56:58 +08:00
Polish configuration related to predictive test selection
Most notably, this commit splits the tests that use Spring REST Docs out into a separate task for which predictive test selection is disabled. This allows it to be cached and use Gradle's built-in up-to-date checking, thereby avoiding the generation of new snippets and the need to then run the asciidoctor and asciidoctorPdf tasks. It also updates spring-boot-smoke-test-junit-vintage to disable predictive test selection so that we can continue to assert that the some tests were executed. See gh-35869
This commit is contained in:
parent
27b8ec8a3d
commit
7d07c0d09c
@ -190,9 +190,7 @@ class JavaConventions {
|
||||
if (isPredictiveTestSelectionEnabled()) {
|
||||
PredictiveTestSelectionExtension predictiveTestSelection = test.getExtensions()
|
||||
.getByType(PredictiveTestSelectionExtension.class);
|
||||
predictiveTestSelection.getEnabled().set(true);
|
||||
predictiveTestSelection.mustRun((mustRun) -> mustRun.getIncludeClasses()
|
||||
.add("org.springframework.boot.actuate.autoconfigure.endpoint.web.documentation.*"));
|
||||
predictiveTestSelection.getEnabled().convention(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -196,26 +196,10 @@ dependencies {
|
||||
testRuntimeOnly("org.springframework.security:spring-security-saml2-service-provider")
|
||||
}
|
||||
|
||||
test {
|
||||
outputs.dir("${buildDir}/generated-snippets")
|
||||
}
|
||||
|
||||
task dependencyVersions(type: org.springframework.boot.build.constraints.ExtractVersionConstraints) {
|
||||
enforcedPlatform(":spring-boot-project:spring-boot-dependencies")
|
||||
}
|
||||
|
||||
tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) {
|
||||
dependsOn dependencyVersions
|
||||
doFirst {
|
||||
def versionConstraints = dependencyVersions.versionConstraints
|
||||
def integrationVersion = versionConstraints["org.springframework.integration:spring-integration-core"]
|
||||
def integrationDocs = String.format("https://docs.spring.io/spring-integration/docs/%s/reference/html/", integrationVersion)
|
||||
attributes "spring-integration-docs": integrationDocs
|
||||
}
|
||||
dependsOn test
|
||||
inputs.dir("${buildDir}/generated-snippets").withPathSensitivity(PathSensitivity.RELATIVE).withPropertyName("generatedSnippets")
|
||||
}
|
||||
|
||||
asciidoctor {
|
||||
sources {
|
||||
include "index.adoc"
|
||||
@ -243,3 +227,31 @@ task zip(type: Zip) {
|
||||
artifacts {
|
||||
documentation zip
|
||||
}
|
||||
|
||||
tasks.named("test") {
|
||||
filter {
|
||||
excludeTestsMatching("org.springframework.boot.actuate.autoconfigure.endpoint.web.documentation.*")
|
||||
}
|
||||
}
|
||||
|
||||
def documentationTest = tasks.register("documentationTest", Test) {
|
||||
filter {
|
||||
includeTestsMatching("org.springframework.boot.actuate.autoconfigure.endpoint.web.documentation.*")
|
||||
}
|
||||
outputs.dir("${buildDir}/generated-snippets")
|
||||
predictiveSelection {
|
||||
enabled = false
|
||||
}
|
||||
}
|
||||
|
||||
tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) {
|
||||
dependsOn dependencyVersions
|
||||
doFirst {
|
||||
def versionConstraints = dependencyVersions.versionConstraints
|
||||
def integrationVersion = versionConstraints["org.springframework.integration:spring-integration-core"]
|
||||
def integrationDocs = String.format("https://docs.spring.io/spring-integration/docs/%s/reference/html/", integrationVersion)
|
||||
attributes "spring-integration-docs": integrationDocs
|
||||
}
|
||||
dependsOn documentationTest
|
||||
inputs.dir("${buildDir}/generated-snippets").withPathSensitivity(PathSensitivity.RELATIVE).withPropertyName("generatedSnippets")
|
||||
}
|
||||
|
@ -23,4 +23,7 @@ test {
|
||||
}
|
||||
}
|
||||
}
|
||||
predictiveSelection {
|
||||
enabled = false
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user