Never spam to log during the normal test execution in Gradle tests
This commit is contained in:
committed by
teamcityserver
parent
9d1a6ebb18
commit
b5f71bacaf
+28
-22
@@ -8,18 +8,13 @@ package org.jetbrains.kotlin.gradle.testbase
|
|||||||
import org.gradle.testkit.runner.BuildResult
|
import org.gradle.testkit.runner.BuildResult
|
||||||
import org.gradle.testkit.runner.GradleRunner
|
import org.gradle.testkit.runner.GradleRunner
|
||||||
import org.gradle.util.GradleVersion
|
import org.gradle.util.GradleVersion
|
||||||
import kotlin.test.assertTrue
|
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.nio.file.*
|
import java.nio.file.*
|
||||||
import java.nio.file.Files.copy
|
import java.nio.file.Files.copy
|
||||||
import java.nio.file.Files.createDirectories
|
import java.nio.file.Files.createDirectories
|
||||||
|
|
||||||
import java.nio.file.attribute.BasicFileAttributes
|
import java.nio.file.attribute.BasicFileAttributes
|
||||||
import kotlin.io.path.ExperimentalPathApi
|
import kotlin.io.path.*
|
||||||
import kotlin.io.path.createFile
|
import kotlin.test.assertTrue
|
||||||
import kotlin.io.path.exists
|
|
||||||
import kotlin.io.path.readText
|
|
||||||
import kotlin.io.path.writeText
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create new test project.
|
* Create new test project.
|
||||||
@@ -74,11 +69,14 @@ fun TestProject.build(
|
|||||||
vararg buildArguments: String,
|
vararg buildArguments: String,
|
||||||
assertions: BuildResult.() -> Unit = {}
|
assertions: BuildResult.() -> Unit = {}
|
||||||
) {
|
) {
|
||||||
val buildResult = gradleRunner
|
val allBuildArguments = commonBuildSetup(buildArguments.toList())
|
||||||
.withArguments(commonBuildSetup(buildArguments.toList()))
|
withBuildSummary(allBuildArguments) {
|
||||||
.build()
|
val buildResult = gradleRunner
|
||||||
|
.withArguments(allBuildArguments)
|
||||||
|
.build()
|
||||||
|
|
||||||
assertions(buildResult)
|
assertions(buildResult)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -88,11 +86,14 @@ fun TestProject.buildAndFail(
|
|||||||
vararg buildArguments: String,
|
vararg buildArguments: String,
|
||||||
assertions: BuildResult.() -> Unit = {}
|
assertions: BuildResult.() -> Unit = {}
|
||||||
) {
|
) {
|
||||||
val buildResult = gradleRunner
|
val allBuildArguments = commonBuildSetup(buildArguments.toList())
|
||||||
.withArguments(commonBuildSetup(buildArguments.toList()))
|
withBuildSummary(allBuildArguments) {
|
||||||
.buildAndFail()
|
val buildResult = gradleRunner
|
||||||
|
.withArguments(allBuildArguments)
|
||||||
|
.buildAndFail()
|
||||||
|
|
||||||
assertions(buildResult)
|
assertions(buildResult)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun TestProject.enableLocalBuildCache(
|
fun TestProject.enableLocalBuildCache(
|
||||||
@@ -132,14 +133,19 @@ private fun TestProject.commonBuildSetup(
|
|||||||
buildArguments: List<String>
|
buildArguments: List<String>
|
||||||
): List<String> {
|
): List<String> {
|
||||||
val buildOptionsArguments = buildOptions.toArguments(gradleVersion)
|
val buildOptionsArguments = buildOptions.toArguments(gradleVersion)
|
||||||
val allBuildArguments = buildOptionsArguments + buildArguments + "--full-stacktrace"
|
return buildOptionsArguments + buildArguments + "--full-stacktrace"
|
||||||
|
}
|
||||||
|
|
||||||
println("<=== Test build: ${this.projectName} ===>")
|
private fun TestProject.withBuildSummary(buildArguments: List<String>, run: () -> Unit) {
|
||||||
println("<=== Using Gradle version: ${gradleVersion.version} ===>")
|
try {
|
||||||
println("<=== Run arguments: ${allBuildArguments.joinToString()} ===>")
|
run()
|
||||||
println("<=== Project path: ${projectPath.toAbsolutePath()} ===>")
|
} catch (t: Throwable) {
|
||||||
|
println("<=== Test build: ${projectName} ===>")
|
||||||
return allBuildArguments
|
println("<=== Using Gradle version: ${gradleVersion.version} ===>")
|
||||||
|
println("<=== Run arguments: ${buildArguments.joinToString()} ===>")
|
||||||
|
println("<=== Project path: ${projectPath.toAbsolutePath()} ===>")
|
||||||
|
throw t
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user