Use class instead of string to hold AGP version in tests
This commit is contained in:
+5
-4
@@ -1,6 +1,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle
|
package org.jetbrains.kotlin.gradle
|
||||||
|
|
||||||
import org.gradle.api.logging.LogLevel
|
import org.gradle.api.logging.LogLevel
|
||||||
|
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||||
import org.jetbrains.kotlin.gradle.util.getFileByName
|
import org.jetbrains.kotlin.gradle.util.getFileByName
|
||||||
import org.jetbrains.kotlin.gradle.util.getFilesByNames
|
import org.jetbrains.kotlin.gradle.util.getFilesByNames
|
||||||
import org.jetbrains.kotlin.gradle.util.modify
|
import org.jetbrains.kotlin.gradle.util.modify
|
||||||
@@ -11,7 +12,7 @@ import kotlin.test.assertEquals
|
|||||||
import kotlin.test.assertTrue
|
import kotlin.test.assertTrue
|
||||||
|
|
||||||
// TODO If we there is a way to fetch the latest Android plugin version, test against the latest version
|
// TODO If we there is a way to fetch the latest Android plugin version, test against the latest version
|
||||||
class KotlinAndroid32GradleIT : KotlinAndroid3GradleIT(androidGradlePluginVersion = "3.2.0") {
|
class KotlinAndroid32GradleIT : KotlinAndroid3GradleIT(androidGradlePluginVersion = AGPVersion.v3_2_0) {
|
||||||
override val defaultGradleVersion: GradleVersionRequired
|
override val defaultGradleVersion: GradleVersionRequired
|
||||||
get() = GradleVersionRequired.AtLeast("4.6")
|
get() = GradleVersionRequired.AtLeast("4.6")
|
||||||
|
|
||||||
@@ -230,12 +231,12 @@ class KotlinAndroid32GradleIT : KotlinAndroid3GradleIT(androidGradlePluginVersio
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class KotlinAndroid30GradleIT : KotlinAndroid3GradleIT(androidGradlePluginVersion = "3.0.0") {
|
class KotlinAndroid30GradleIT : KotlinAndroid3GradleIT(androidGradlePluginVersion = AGPVersion.v3_0_0) {
|
||||||
override val defaultGradleVersion: GradleVersionRequired
|
override val defaultGradleVersion: GradleVersionRequired
|
||||||
get() = GradleVersionRequired.InRange("4.1", "4.10.2")
|
get() = GradleVersionRequired.InRange("4.1", "4.10.2")
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class KotlinAndroid3GradleIT(androidGradlePluginVersion: String) : AbstractKotlinAndroidGradleTests(androidGradlePluginVersion) {
|
abstract class KotlinAndroid3GradleIT(androidGradlePluginVersion: AGPVersion) : AbstractKotlinAndroidGradleTests(androidGradlePluginVersion) {
|
||||||
@Test
|
@Test
|
||||||
fun testApplyWithFeaturePlugin() {
|
fun testApplyWithFeaturePlugin() {
|
||||||
val project = Project("AndroidProject")
|
val project = Project("AndroidProject")
|
||||||
@@ -264,7 +265,7 @@ abstract class KotlinAndroid3GradleIT(androidGradlePluginVersion: String) : Abst
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class AbstractKotlinAndroidGradleTests(val androidGradlePluginVersion: String) : BaseGradleIT() {
|
abstract class AbstractKotlinAndroidGradleTests(val androidGradlePluginVersion: AGPVersion) : BaseGradleIT() {
|
||||||
|
|
||||||
override fun defaultBuildOptions() =
|
override fun defaultBuildOptions() =
|
||||||
super.defaultBuildOptions().copy(
|
super.defaultBuildOptions().copy(
|
||||||
|
|||||||
+2
-1
@@ -3,6 +3,7 @@ package org.jetbrains.kotlin.gradle
|
|||||||
import org.gradle.api.logging.LogLevel
|
import org.gradle.api.logging.LogLevel
|
||||||
import org.gradle.tooling.GradleConnector
|
import org.gradle.tooling.GradleConnector
|
||||||
import org.gradle.util.GradleVersion
|
import org.gradle.util.GradleVersion
|
||||||
|
import org.gradle.util.VersionNumber
|
||||||
import org.jetbrains.kotlin.gradle.model.ModelContainer
|
import org.jetbrains.kotlin.gradle.model.ModelContainer
|
||||||
import org.jetbrains.kotlin.gradle.model.ModelFetcherBuildAction
|
import org.jetbrains.kotlin.gradle.model.ModelFetcherBuildAction
|
||||||
import org.jetbrains.kotlin.gradle.util.*
|
import org.jetbrains.kotlin.gradle.util.*
|
||||||
@@ -171,7 +172,7 @@ abstract class BaseGradleIT {
|
|||||||
val incrementalJs: Boolean? = null,
|
val incrementalJs: Boolean? = null,
|
||||||
val androidHome: File? = null,
|
val androidHome: File? = null,
|
||||||
val javaHome: File? = null,
|
val javaHome: File? = null,
|
||||||
val androidGradlePluginVersion: String? = null,
|
val androidGradlePluginVersion: AGPVersion? = null,
|
||||||
val forceOutputToStdout: Boolean = false,
|
val forceOutputToStdout: Boolean = false,
|
||||||
val debug: Boolean = false,
|
val debug: Boolean = false,
|
||||||
val freeCommandLineArgs: List<String> = emptyList(),
|
val freeCommandLineArgs: List<String> = emptyList(),
|
||||||
|
|||||||
+2
-1
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle
|
package org.jetbrains.kotlin.gradle
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||||
import org.jetbrains.kotlin.gradle.util.modify
|
import org.jetbrains.kotlin.gradle.util.modify
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
@@ -30,7 +31,7 @@ class BuildCacheRelocationIT : BaseGradleIT() {
|
|||||||
override fun defaultBuildOptions(): BuildOptions =
|
override fun defaultBuildOptions(): BuildOptions =
|
||||||
super.defaultBuildOptions().copy(
|
super.defaultBuildOptions().copy(
|
||||||
withBuildCache = true,
|
withBuildCache = true,
|
||||||
androidGradlePluginVersion = "3.1.0",
|
androidGradlePluginVersion = AGPVersion.v3_1_0,
|
||||||
androidHome = KotlinTestUtils.findAndroidSdk()
|
androidHome = KotlinTestUtils.findAndroidSdk()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
+5
-4
@@ -1,5 +1,6 @@
|
|||||||
package org.jetbrains.kotlin.gradle
|
package org.jetbrains.kotlin.gradle
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||||
import org.jetbrains.kotlin.gradle.util.getFileByName
|
import org.jetbrains.kotlin.gradle.util.getFileByName
|
||||||
import org.jetbrains.kotlin.gradle.util.modify
|
import org.jetbrains.kotlin.gradle.util.modify
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
@@ -11,16 +12,16 @@ class Kapt3WorkersAndroid32IT : Kapt3Android32IT() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
open class Kapt3Android32IT : Kapt3AndroidIT() {
|
open class Kapt3Android32IT : Kapt3AndroidIT() {
|
||||||
override val androidGradlePluginVersion: String
|
override val androidGradlePluginVersion: AGPVersion
|
||||||
get() = "3.2.0"
|
get() = AGPVersion.v3_2_0
|
||||||
|
|
||||||
override val defaultGradleVersion: GradleVersionRequired
|
override val defaultGradleVersion: GradleVersionRequired
|
||||||
get() = GradleVersionRequired.AtLeast("4.6")
|
get() = GradleVersionRequired.AtLeast("4.6")
|
||||||
}
|
}
|
||||||
|
|
||||||
open class Kapt3AndroidIT : Kapt3BaseIT() {
|
open class Kapt3AndroidIT : Kapt3BaseIT() {
|
||||||
protected open val androidGradlePluginVersion: String
|
protected open val androidGradlePluginVersion: AGPVersion
|
||||||
get() = "3.0.0"
|
get() = AGPVersion.v3_0_0
|
||||||
|
|
||||||
override val defaultGradleVersion: GradleVersionRequired
|
override val defaultGradleVersion: GradleVersionRequired
|
||||||
get() = GradleVersionRequired.InRange("4.1", "4.10.2")
|
get() = GradleVersionRequired.InRange("4.1", "4.10.2")
|
||||||
|
|||||||
+2
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.gradle.model
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
||||||
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
||||||
|
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
||||||
@@ -20,7 +21,7 @@ class KotlinAndroidExtensionIT : BaseGradleIT() {
|
|||||||
|
|
||||||
override fun defaultBuildOptions(): BuildOptions {
|
override fun defaultBuildOptions(): BuildOptions {
|
||||||
return super.defaultBuildOptions().copy(
|
return super.defaultBuildOptions().copy(
|
||||||
androidGradlePluginVersion = "3.1.0",
|
androidGradlePluginVersion = AGPVersion.v3_1_0,
|
||||||
androidHome = KotlinTestUtils.findAndroidSdk()
|
androidHome = KotlinTestUtils.findAndroidSdk()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.gradle.model
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
||||||
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
import org.jetbrains.kotlin.gradle.GradleVersionRequired
|
||||||
|
import org.jetbrains.kotlin.gradle.util.AGPVersion
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
||||||
@@ -20,7 +21,7 @@ class KotlinProjectIT : BaseGradleIT() {
|
|||||||
|
|
||||||
override fun defaultBuildOptions(): BuildOptions {
|
override fun defaultBuildOptions(): BuildOptions {
|
||||||
return super.defaultBuildOptions().copy(
|
return super.defaultBuildOptions().copy(
|
||||||
androidGradlePluginVersion = "3.1.0",
|
androidGradlePluginVersion = AGPVersion.v3_1_0,
|
||||||
androidHome = KotlinTestUtils.findAndroidSdk()
|
androidHome = KotlinTestUtils.findAndroidSdk()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+25
@@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||||
|
* that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.gradle.util
|
||||||
|
|
||||||
|
import org.gradle.util.VersionNumber
|
||||||
|
|
||||||
|
class AGPVersion private constructor(private val versionNumber: VersionNumber) {
|
||||||
|
operator fun compareTo(other: AGPVersion): Int =
|
||||||
|
versionNumber.compareTo(other.versionNumber)
|
||||||
|
|
||||||
|
override fun toString(): String =
|
||||||
|
versionNumber.toString()
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
fun fromString(versionString: String): AGPVersion =
|
||||||
|
AGPVersion(VersionNumber.parse(versionString))
|
||||||
|
|
||||||
|
val v3_0_0 = fromString("3.0.0")
|
||||||
|
val v3_1_0 = fromString("3.1.0")
|
||||||
|
val v3_2_0 = fromString("3.2.0")
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user