diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt index 26ee2e22d1b..cc7e89ccdba 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt @@ -41,10 +41,10 @@ abstract class BaseGradleIT { val isTeamCityRun = System.getenv("TEAMCITY_VERSION") != null @Before - fun setUp() { + open fun setUp() { // Aapt2 from Android Gradle Plugin 3.2 and below does not handle long paths on Windows. workingDir = createTempDir(if (isWindows) "" else "BaseGradleIT") - acceptAndroidSdkLicenses() + defaultBuildOptions().acceptAndroidSdkLicenses() } @After @@ -53,9 +53,11 @@ abstract class BaseGradleIT { } // https://developer.android.com/studio/intro/update.html#download-with-gradle - fun acceptAndroidSdkLicenses() = defaultBuildOptions().androidHome?.let { - val sdkLicensesDir = it.resolve("licenses") - if(!sdkLicensesDir.exists()) sdkLicensesDir.mkdirs() + fun BuildOptions.acceptAndroidSdkLicenses() { + if (this.androidHome == null) return + + val sdkLicensesDir = this.androidHome.resolve("licenses") + if (!sdkLicensesDir.exists()) sdkLicensesDir.mkdirs() val sdkLicenses = listOf( "8933bad161af4178b1185d1a37fbf41ea5269c55", diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/PureAndroidAndJavaConsumeMppLibIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/PureAndroidAndJavaConsumeMppLibIT.kt index f0358354e8c..1be38eb0219 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/PureAndroidAndJavaConsumeMppLibIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/PureAndroidAndJavaConsumeMppLibIT.kt @@ -8,9 +8,11 @@ package org.jetbrains.kotlin.gradle import org.jetbrains.kotlin.gradle.util.AGPVersion import org.jetbrains.kotlin.gradle.util.checkedReplace +import org.jetbrains.kotlin.gradle.util.isWindows import org.jetbrains.kotlin.gradle.util.modify import org.jetbrains.kotlin.test.util.KtTestUtil import org.junit.Assume +import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.Parameterized @@ -38,15 +40,25 @@ class PureAndroidAndJavaConsumeMppLibIT : BaseGradleIT() { @Parameterized.Parameter(1) lateinit var isAndroidDebugOnlyParameter: RefBoolean - @Test - fun test() { + lateinit var buildOptions: BuildOptions + + @Before + override fun setUp() { val jdk11Home = File(System.getProperty("jdk11Home")) Assume.assumeTrue("This test requires JDK11 for AGP7", jdk11Home.isDirectory) - val buildOptions = defaultBuildOptions().copy( + + buildOptions = defaultBuildOptions().copy( javaHome = jdk11Home, androidHome = KtTestUtil.findAndroidSdk(), androidGradlePluginVersion = AGPVersion.v7_0_0 ) + buildOptions.acceptAndroidSdkLicenses() + + super.setUp() + } + + @Test + fun test() { val gradleVersionRequirement = GradleVersionRequired.AtLeast("7.0") val isAndroidDebugOnly = isAndroidDebugOnlyParameter.booleanValue()