Allow to override build options for particular builds.

^KT-45745 In Progress
This commit is contained in:
Yahor Berdnikau
2021-06-17 12:08:06 +02:00
parent 25192cd639
commit 7958307d28
@@ -71,9 +71,14 @@ fun TestProject.build(
vararg buildArguments: String,
forceOutput: Boolean = this.forceOutput,
enableGradleDebug: Boolean = this.enableGradleDebug,
buildOptions: KGPBaseTest.BuildOptions = this.buildOptions,
assertions: BuildResult.() -> Unit = {}
) {
val allBuildArguments = commonBuildSetup(buildArguments.toList())
val allBuildArguments = commonBuildSetup(
buildArguments.toList(),
buildOptions,
gradleVersion
)
val gradleRunnerForBuild = gradleRunner
.also { if (forceOutput) it.forwardOutput() }
.withDebug(enableGradleDebug)
@@ -91,9 +96,14 @@ fun TestProject.buildAndFail(
vararg buildArguments: String,
forceOutput: Boolean = this.forceOutput,
enableGradleDebug: Boolean = this.enableGradleDebug,
buildOptions: KGPBaseTest.BuildOptions = this.buildOptions,
assertions: BuildResult.() -> Unit = {}
) {
val allBuildArguments = commonBuildSetup(buildArguments.toList())
val allBuildArguments = commonBuildSetup(
buildArguments.toList(),
buildOptions,
gradleVersion
)
val gradleRunnerForBuild = gradleRunner
.also { if (forceOutput) it.forwardOutput() }
.withDebug(enableGradleDebug)
@@ -150,8 +160,10 @@ class TestProject(
): Path = classesDir(sourceSet, language = "kotlin")
}
private fun TestProject.commonBuildSetup(
buildArguments: List<String>
private fun commonBuildSetup(
buildArguments: List<String>,
buildOptions: KGPBaseTest.BuildOptions,
gradleVersion: GradleVersion
): List<String> {
val buildOptionsArguments = buildOptions.toArguments(gradleVersion)
return buildOptionsArguments + buildArguments + "--full-stacktrace"