Drop gradle ITs depending on AGP versions below 3.2
AGP of these versions cannot handle module-info class included in kotlin-stdlib artifact from now on.
This commit is contained in:
+1
-1
@@ -31,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 = AGPVersion.v3_1_0,
|
androidGradlePluginVersion = AGPVersion.v3_2_0,
|
||||||
androidHome = KotlinTestUtils.findAndroidSdk()
|
androidHome = KotlinTestUtils.findAndroidSdk()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
+17
-38
@@ -78,9 +78,8 @@ class Kapt3Android34IT : Kapt3AndroidIT() {
|
|||||||
get() = GradleVersionRequired.Until("5.4.1")
|
get() = GradleVersionRequired.Until("5.4.1")
|
||||||
}
|
}
|
||||||
|
|
||||||
open class Kapt3AndroidIT : Kapt3BaseIT() {
|
abstract class Kapt3AndroidIT : Kapt3BaseIT() {
|
||||||
protected open val androidGradlePluginVersion: AGPVersion
|
protected abstract val androidGradlePluginVersion: AGPVersion
|
||||||
get() = AGPVersion.v3_0_0
|
|
||||||
|
|
||||||
override fun defaultBuildOptions() =
|
override fun defaultBuildOptions() =
|
||||||
super.defaultBuildOptions().copy(
|
super.defaultBuildOptions().copy(
|
||||||
@@ -98,11 +97,7 @@ open class Kapt3AndroidIT : Kapt3BaseIT() {
|
|||||||
assertFileExists("app/build/generated/source/kapt/debug/org/example/kotlin/butterknife/SimpleActivity\$\$ViewBinder.java")
|
assertFileExists("app/build/generated/source/kapt/debug/org/example/kotlin/butterknife/SimpleActivity\$\$ViewBinder.java")
|
||||||
|
|
||||||
val butterknifeJavaClassesDir =
|
val butterknifeJavaClassesDir =
|
||||||
if (androidGradlePluginVersion >= AGPVersion.v3_2_0)
|
"app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/org/example/kotlin/butterknife/"
|
||||||
"app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/org/example/kotlin/butterknife/"
|
|
||||||
else
|
|
||||||
"app/build/intermediates/classes/debug/org/example/kotlin/butterknife/"
|
|
||||||
|
|
||||||
assertFileExists(butterknifeJavaClassesDir + "SimpleActivity\$\$ViewBinder.class")
|
assertFileExists(butterknifeJavaClassesDir + "SimpleActivity\$\$ViewBinder.class")
|
||||||
|
|
||||||
assertFileExists("app/build/tmp/kotlin-classes/debug/org/example/kotlin/butterknife/SimpleAdapter\$ViewHolder.class")
|
assertFileExists("app/build/tmp/kotlin-classes/debug/org/example/kotlin/butterknife/SimpleAdapter\$ViewHolder.class")
|
||||||
@@ -125,10 +120,7 @@ open class Kapt3AndroidIT : Kapt3BaseIT() {
|
|||||||
assertFileExists("app/build/generated/source/kapt/debug/com/example/dagger/kotlin/ui/HomeActivity_MembersInjector.java")
|
assertFileExists("app/build/generated/source/kapt/debug/com/example/dagger/kotlin/ui/HomeActivity_MembersInjector.java")
|
||||||
|
|
||||||
val daggerJavaClassesDir =
|
val daggerJavaClassesDir =
|
||||||
if (androidGradlePluginVersion >= AGPVersion.v3_2_0)
|
"app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/example/dagger/kotlin/"
|
||||||
"app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/example/dagger/kotlin/"
|
|
||||||
else
|
|
||||||
"app/build/intermediates/classes/debug/com/example/dagger/kotlin/"
|
|
||||||
|
|
||||||
assertFileExists(daggerJavaClassesDir + "DaggerApplicationComponent.class")
|
assertFileExists(daggerJavaClassesDir + "DaggerApplicationComponent.class")
|
||||||
|
|
||||||
@@ -233,21 +225,10 @@ open class Kapt3AndroidIT : Kapt3BaseIT() {
|
|||||||
assertKaptSuccessful()
|
assertKaptSuccessful()
|
||||||
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/BR.java")
|
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/BR.java")
|
||||||
|
|
||||||
when {
|
// databinding compiler v2 was introduced in AGP 3.1.0, was enabled by default in AGP 3.2.0
|
||||||
output.contains("-Aandroid.databinding.enableV2=1") -> {
|
assertContains("-Aandroid.databinding.enableV2=1")
|
||||||
// databinding compiler v2 was introduced in AGP 3.1.0, was enabled by default in AGP 3.2.0
|
assertNoSuchFile("library/build/generated/source/kapt/debugAndroidTest/android/databinding/DataBinderMapperImpl.java")
|
||||||
assertNoSuchFile("library/build/generated/source/kapt/debugAndroidTest/android/databinding/DataBinderMapperImpl.java")
|
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/databinding/ActivityTestBindingImpl.java")
|
||||||
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/databinding/ActivityTestBindingImpl.java")
|
|
||||||
}
|
|
||||||
androidGradlePluginVersion == AGPVersion.v3_1_0 -> {
|
|
||||||
assertNoSuchFile("library/build/generated/source/kapt/debugAndroidTest/android/databinding/DataBinderMapperImpl.java")
|
|
||||||
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/databinding/ActivityTestBinding.java")
|
|
||||||
}
|
|
||||||
else -> {
|
|
||||||
assertNoSuchFile("library/build/generated/source/kapt/debugAndroidTest/android/databinding/DataBinderMapper.java")
|
|
||||||
assertFileExists("app/build/generated/source/kapt/debug/com/example/databinding/databinding/ActivityTestBinding.java")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// KT-23866
|
// KT-23866
|
||||||
assertNotContains("The following options were not recognized by any processor")
|
assertNotContains("The following options were not recognized by any processor")
|
||||||
@@ -257,19 +238,17 @@ open class Kapt3AndroidIT : Kapt3BaseIT() {
|
|||||||
private fun setupDataBinding(project: Project) {
|
private fun setupDataBinding(project: Project) {
|
||||||
project.setupWorkingDir()
|
project.setupWorkingDir()
|
||||||
|
|
||||||
if (androidGradlePluginVersion >= AGPVersion.v3_2_0) {
|
project.gradleBuildScript().modify {
|
||||||
project.gradleBuildScript().modify {
|
it + "\n\n" + """
|
||||||
it + "\n\n" + """
|
allprojects {
|
||||||
allprojects {
|
plugins.withId("kotlin-kapt") {
|
||||||
plugins.withId("kotlin-kapt") {
|
println("${'$'}project android.databinding.enableV2=${'$'}{project.findProperty('android.databinding.enableV2')}")
|
||||||
println("${'$'}project android.databinding.enableV2=${'$'}{project.findProperty('android.databinding.enableV2')}")
|
|
||||||
|
|
||||||
// With new AGP, there's no need in the Databinding kapt dependency:
|
// With new AGP, there's no need in the Databinding kapt dependency:
|
||||||
configurations.kapt.exclude group: "com.android.databinding", module: "compiler"
|
configurations.kapt.exclude group: "com.android.databinding", module: "compiler"
|
||||||
}
|
|
||||||
}
|
}
|
||||||
""".trimIndent()
|
}
|
||||||
}
|
""".trimIndent()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user