|
|
|
plugins {
|
|
|
|
id "java"
|
|
|
|
id "org.springframework.boot.conventions"
|
|
|
|
id "org.springframework.boot.integration-test"
|
|
|
|
}
|
|
|
|
|
|
|
|
description = "Spring Boot Server Integration Tests"
|
|
|
|
|
|
|
|
configurations {
|
|
|
|
testRepository
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
intTestImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test"))
|
|
|
|
intTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support"))
|
|
|
|
intTestImplementation("org.apache.httpcomponents:httpasyncclient")
|
|
|
|
intTestImplementation("org.awaitility:awaitility")
|
|
|
|
intTestImplementation("org.springframework:spring-web")
|
|
|
|
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-dependencies", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-tools:spring-boot-gradle-plugin", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter-jetty", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter-json", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter-parent", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter-tomcat", configuration: "mavenRepository"))
|
|
|
|
testRepository(project(path: ":spring-boot-project:spring-boot-starters:spring-boot-starter-undertow", configuration: "mavenRepository"))
|
|
|
|
|
|
|
|
testRuntimeOnly(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-logging"))
|
|
|
|
}
|
|
|
|
|
|
|
|
task syncTestRepository(type: Sync) {
|
|
|
|
destinationDir = file("${buildDir}/test-repository")
|
|
|
|
from {
|
|
|
|
configurations.testRepository
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
task syncAppSource(type: Sync) {
|
|
|
|
from "spring-boot-server-tests-app"
|
|
|
|
into "${buildDir}/spring-boot-server-tests-app"
|
|
|
|
filter { line ->
|
|
|
|
line.replace("id \"org.springframework.boot\"", "id \"org.springframework.boot\" version \"${project.version}\"")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
task buildApps(type: GradleBuild) {
|
|
|
|
dependsOn syncAppSource, syncTestRepository
|
|
|
|
dir = "${buildDir}/spring-boot-server-tests-app"
|
|
|
|
startParameter.buildCacheEnabled = false
|
|
|
|
tasks = [
|
|
|
|
"jettyBootJar",
|
|
|
|
"jettyBootWar",
|
|
|
|
"tomcatBootJar",
|
|
|
|
"tomcatBootWar",
|
|
|
|
"undertowBootJar",
|
|
|
|
"undertowBootWar"
|
|
|
|
]
|
|
|
|
}
|
|
|
|
|
|
|
|
intTest {
|
|
|
|
dependsOn buildApps
|
|
|
|
}
|