Accept android licenses in setUp PureAndroidAndJavaConsumeMppLibIT

This commit is contained in:
Alexander Dudinsky
2021-07-20 11:09:50 +03:00
parent a1a1bda5f3
commit 8eea749231
2 changed files with 22 additions and 8 deletions
@@ -41,10 +41,10 @@ abstract class BaseGradleIT {
val isTeamCityRun = System.getenv("TEAMCITY_VERSION") != null val isTeamCityRun = System.getenv("TEAMCITY_VERSION") != null
@Before @Before
fun setUp() { open fun setUp() {
// Aapt2 from Android Gradle Plugin 3.2 and below does not handle long paths on Windows. // Aapt2 from Android Gradle Plugin 3.2 and below does not handle long paths on Windows.
workingDir = createTempDir(if (isWindows) "" else "BaseGradleIT") workingDir = createTempDir(if (isWindows) "" else "BaseGradleIT")
acceptAndroidSdkLicenses() defaultBuildOptions().acceptAndroidSdkLicenses()
} }
@After @After
@@ -53,9 +53,11 @@ abstract class BaseGradleIT {
} }
// https://developer.android.com/studio/intro/update.html#download-with-gradle // https://developer.android.com/studio/intro/update.html#download-with-gradle
fun acceptAndroidSdkLicenses() = defaultBuildOptions().androidHome?.let { fun BuildOptions.acceptAndroidSdkLicenses() {
val sdkLicensesDir = it.resolve("licenses") if (this.androidHome == null) return
if(!sdkLicensesDir.exists()) sdkLicensesDir.mkdirs()
val sdkLicensesDir = this.androidHome.resolve("licenses")
if (!sdkLicensesDir.exists()) sdkLicensesDir.mkdirs()
val sdkLicenses = listOf( val sdkLicenses = listOf(
"8933bad161af4178b1185d1a37fbf41ea5269c55", "8933bad161af4178b1185d1a37fbf41ea5269c55",
@@ -8,9 +8,11 @@ package org.jetbrains.kotlin.gradle
import org.jetbrains.kotlin.gradle.util.AGPVersion import org.jetbrains.kotlin.gradle.util.AGPVersion
import org.jetbrains.kotlin.gradle.util.checkedReplace 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.gradle.util.modify
import org.jetbrains.kotlin.test.util.KtTestUtil import org.jetbrains.kotlin.test.util.KtTestUtil
import org.junit.Assume import org.junit.Assume
import org.junit.Before
import org.junit.Test import org.junit.Test
import org.junit.runner.RunWith import org.junit.runner.RunWith
import org.junit.runners.Parameterized import org.junit.runners.Parameterized
@@ -38,15 +40,25 @@ class PureAndroidAndJavaConsumeMppLibIT : BaseGradleIT() {
@Parameterized.Parameter(1) @Parameterized.Parameter(1)
lateinit var isAndroidDebugOnlyParameter: RefBoolean lateinit var isAndroidDebugOnlyParameter: RefBoolean
@Test lateinit var buildOptions: BuildOptions
fun test() {
@Before
override fun setUp() {
val jdk11Home = File(System.getProperty("jdk11Home")) val jdk11Home = File(System.getProperty("jdk11Home"))
Assume.assumeTrue("This test requires JDK11 for AGP7", jdk11Home.isDirectory) Assume.assumeTrue("This test requires JDK11 for AGP7", jdk11Home.isDirectory)
val buildOptions = defaultBuildOptions().copy(
buildOptions = defaultBuildOptions().copy(
javaHome = jdk11Home, javaHome = jdk11Home,
androidHome = KtTestUtil.findAndroidSdk(), androidHome = KtTestUtil.findAndroidSdk(),
androidGradlePluginVersion = AGPVersion.v7_0_0 androidGradlePluginVersion = AGPVersion.v7_0_0
) )
buildOptions.acceptAndroidSdkLicenses()
super.setUp()
}
@Test
fun test() {
val gradleVersionRequirement = GradleVersionRequired.AtLeast("7.0") val gradleVersionRequirement = GradleVersionRequired.AtLeast("7.0")
val isAndroidDebugOnly = isAndroidDebugOnlyParameter.booleanValue() val isAndroidDebugOnly = isAndroidDebugOnlyParameter.booleanValue()