From 7958307d280da833284c6e798cbcfc11e1797648 Mon Sep 17 00:00:00 2001 From: Yahor Berdnikau Date: Thu, 17 Jun 2021 12:08:06 +0200 Subject: [PATCH] Allow to override build options for particular builds. ^KT-45745 In Progress --- .../kotlin/gradle/testbase/testDsl.kt | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt index bf56521931e..64a8f8a32fd 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt @@ -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 +private fun commonBuildSetup( + buildArguments: List, + buildOptions: KGPBaseTest.BuildOptions, + gradleVersion: GradleVersion ): List { val buildOptionsArguments = buildOptions.toArguments(gradleVersion) return buildOptionsArguments + buildArguments + "--full-stacktrace"