[Gradle, BT] Add IC integration tests for the build tools API mode
#KT-61865 Fixed
This commit is contained in:
committed by
Space Team
parent
3eaaed8e7f
commit
664b54de5f
+17
-1
@@ -338,6 +338,22 @@ abstract class IncrementalCompilationJvmMultiProjectWithPreciseBackupIT : Increm
|
|||||||
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class IncrementalCompilationK2JvmMultiProjectBuildToolsApiDaemonIT : IncrementalCompilationJvmMultiProjectWithPreciseBackupIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.DAEMON)
|
||||||
|
|
||||||
|
@Disabled("Doesn't make sense since Build Tools API supports incremental compilation for the in-process mode")
|
||||||
|
override fun testMissingIncrementalState(gradleVersion: GradleVersion) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class IncrementalCompilationK2JvmMultiProjectBuildToolsApiInProcessIT : IncrementalCompilationJvmMultiProjectWithPreciseBackupIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.IN_PROCESS)
|
||||||
|
|
||||||
|
@Disabled("Doesn't make sense since Build Tools API supports incremental compilation for the in-process mode")
|
||||||
|
override fun testMissingIncrementalState(gradleVersion: GradleVersion) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class IncrementalCompilationK1JvmMultiProjectWithPreciseBackupIT : IncrementalCompilationJvmMultiProjectWithPreciseBackupIT() {
|
class IncrementalCompilationK1JvmMultiProjectWithPreciseBackupIT : IncrementalCompilationJvmMultiProjectWithPreciseBackupIT() {
|
||||||
override val defaultBuildOptions = super.defaultBuildOptions.copyEnsuringK1()
|
override val defaultBuildOptions = super.defaultBuildOptions.copyEnsuringK1()
|
||||||
}
|
}
|
||||||
@@ -897,7 +913,7 @@ abstract class BaseIncrementalCompilationMultiProjectIT : IncrementalCompilation
|
|||||||
|
|
||||||
@DisplayName("Test compilation when incremental state is missing")
|
@DisplayName("Test compilation when incremental state is missing")
|
||||||
@GradleTest
|
@GradleTest
|
||||||
fun testMissingIncrementalState(gradleVersion: GradleVersion) {
|
open fun testMissingIncrementalState(gradleVersion: GradleVersion) {
|
||||||
defaultProject(gradleVersion) {
|
defaultProject(gradleVersion) {
|
||||||
// Perform the first non-incremental build without using Kotlin daemon so that incremental state is not produced
|
// Perform the first non-incremental build without using Kotlin daemon so that incremental state is not produced
|
||||||
build(
|
build(
|
||||||
|
|||||||
+51
@@ -6,6 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle
|
package org.jetbrains.kotlin.gradle
|
||||||
|
|
||||||
import org.gradle.util.GradleVersion
|
import org.gradle.util.GradleVersion
|
||||||
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilerExecutionStrategy
|
||||||
import org.jetbrains.kotlin.gradle.testbase.*
|
import org.jetbrains.kotlin.gradle.testbase.*
|
||||||
import org.junit.jupiter.api.Disabled
|
import org.junit.jupiter.api.Disabled
|
||||||
import org.junit.jupiter.api.DisplayName
|
import org.junit.jupiter.api.DisplayName
|
||||||
@@ -122,6 +123,56 @@ class IncrementalK2JavaChangeDefaultIT : IncrementalJavaChangeDefaultIT() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DisplayName("Default incremental compilation via Build Tools API")
|
||||||
|
class IncrementalK2JavaChangeBuildToolsApiDaemonIT : IncrementalJavaChangeDefaultIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.DAEMON)
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testAbiChangeInLib_changeMethodSignature_tracked(gradleVersion: GradleVersion) {
|
||||||
|
super.testAbiChangeInLib_changeMethodSignature_tracked(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testNonAbiChangeInLib_changeMethodBody_tracked(gradleVersion: GradleVersion) {
|
||||||
|
super.testNonAbiChangeInLib_changeMethodBody_tracked(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testAbiChangeInLib_changeMethodSignature(gradleVersion: GradleVersion) {
|
||||||
|
super.testAbiChangeInLib_changeMethodSignature(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testNonAbiChangeInLib_changeMethodBody(gradleVersion: GradleVersion) {
|
||||||
|
super.testNonAbiChangeInLib_changeMethodBody(gradleVersion)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@DisplayName("Incremental compilation via Build Tools API using in-process strategy")
|
||||||
|
class IncrementalK2JavaChangeBuildToolsApiInProcessIT : IncrementalJavaChangeDefaultIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.IN_PROCESS)
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testAbiChangeInLib_changeMethodSignature_tracked(gradleVersion: GradleVersion) {
|
||||||
|
super.testAbiChangeInLib_changeMethodSignature_tracked(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testNonAbiChangeInLib_changeMethodBody_tracked(gradleVersion: GradleVersion) {
|
||||||
|
super.testNonAbiChangeInLib_changeMethodBody_tracked(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testAbiChangeInLib_changeMethodSignature(gradleVersion: GradleVersion) {
|
||||||
|
super.testAbiChangeInLib_changeMethodSignature(gradleVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Disabled("KT-57147")
|
||||||
|
override fun testNonAbiChangeInLib_changeMethodBody(gradleVersion: GradleVersion) {
|
||||||
|
super.testNonAbiChangeInLib_changeMethodBody(gradleVersion)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@DisplayName("Default incremental compilation with precise compilation outputs backup")
|
@DisplayName("Default incremental compilation with precise compilation outputs backup")
|
||||||
abstract class IncrementalJavaChangePreciseCompilationBackupIT : IncrementalJavaChangeDefaultIT() {
|
abstract class IncrementalJavaChangePreciseCompilationBackupIT : IncrementalJavaChangeDefaultIT() {
|
||||||
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
||||||
|
|||||||
+9
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.gradle.android
|
|||||||
|
|
||||||
import org.gradle.api.logging.LogLevel
|
import org.gradle.api.logging.LogLevel
|
||||||
import org.gradle.util.GradleVersion
|
import org.gradle.util.GradleVersion
|
||||||
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilerExecutionStrategy
|
||||||
import org.jetbrains.kotlin.gradle.testbase.*
|
import org.jetbrains.kotlin.gradle.testbase.*
|
||||||
import org.junit.jupiter.api.DisplayName
|
import org.junit.jupiter.api.DisplayName
|
||||||
import kotlin.io.path.appendText
|
import kotlin.io.path.appendText
|
||||||
@@ -181,4 +182,12 @@ open class KotlinAndroidIncrementalIT : KGPBaseTest() {
|
|||||||
|
|
||||||
class KotlinAndroidIncrementalWithPreciseBackupIT : KotlinAndroidIncrementalIT() {
|
class KotlinAndroidIncrementalWithPreciseBackupIT : KotlinAndroidIncrementalIT() {
|
||||||
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(usePreciseOutputsBackup = true, keepIncrementalCompilationCachesInMemory = true)
|
||||||
|
}
|
||||||
|
|
||||||
|
class KotlinAndroidIncrementalBuildToolsApiDaemonIT : KotlinAndroidIncrementalIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.DAEMON)
|
||||||
|
}
|
||||||
|
|
||||||
|
class KotlinAndroidIncrementalBuildToolsApiInProcessIT : KotlinAndroidIncrementalIT() {
|
||||||
|
override val defaultBuildOptions = super.defaultBuildOptions.copy(runViaBuildToolsApi = true, compilerExecutionStrategy = KotlinCompilerExecutionStrategy.IN_PROCESS)
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user