diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildCacheRelocationIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildCacheRelocationIT.kt index 9f7c8dcdfb9..9375a82401a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildCacheRelocationIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildCacheRelocationIT.kt @@ -22,6 +22,7 @@ import org.gradle.testkit.runner.BuildResult import org.gradle.util.GradleVersion import org.jetbrains.kotlin.gradle.testbase.* import org.junit.jupiter.api.DisplayName +import java.io.File import kotlin.io.path.createDirectory @DisplayName("Build cache relocation") @@ -113,15 +114,20 @@ class BuildCacheRelocationIT : KGPBaseTest() { ) } - @JvmGradlePluginTests + @AndroidGradlePluginTests @DisplayName("works with Android project") - @GradleTestVersions(minVersion = TestVersions.Gradle.G_6_7) - @GradleTest - fun testRelocationAndroidProject(gradleVersion: GradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun testRelocationAndroidProject( + gradleVersion: GradleVersion, + agpVersion: String, + jdkProvider: JdkVersions.ProvidedJdk + ) { val (firstProject, secondProject) = prepareTestProjects( "AndroidProject", gradleVersion, - defaultBuildOptions.copy(androidVersion = TestVersions.AGP.AGP_42.version) + defaultBuildOptions.copy(androidVersion = agpVersion), + jdkProvider.location ) checkBuildCacheRelocation( @@ -138,15 +144,20 @@ class BuildCacheRelocationIT : KGPBaseTest() { ) } - @JvmGradlePluginTests + @AndroidGradlePluginTests @DisplayName("Test relocation for Android with dagger project") - @GradleTestVersions(minVersion = TestVersions.Gradle.G_6_7) - @GradleTest - fun testRelocationAndroidDagger(gradleVersion: GradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun testRelocationAndroidDagger( + gradleVersion: GradleVersion, + agpVersion: String, + jdkProvider: JdkVersions.ProvidedJdk + ) { val (firstProject, secondProject) = prepareTestProjects( "kapt2/android-dagger", gradleVersion, - defaultBuildOptions.copy(androidVersion = TestVersions.AGP.AGP_42.version) + defaultBuildOptions.copy(androidVersion = agpVersion), + jdkProvider.location ) { it.subProject("app").buildGradle.append("\nkapt.useBuildCache = true") } @@ -163,15 +174,21 @@ class BuildCacheRelocationIT : KGPBaseTest() { ) } - @JvmGradlePluginTests + @AndroidGradlePluginTests @DisplayName("KT-48617: Kapt ignores empty directories from Android variant") @GradleTestVersions(minVersion = TestVersions.Gradle.G_6_8) - @GradleTest - fun kaptIgnoreEmptyAndroidVariant(gradleVersion: GradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun kaptIgnoreEmptyAndroidVariant( + gradleVersion: GradleVersion, + agpVersion: String, + jdkProvider: JdkVersions.ProvidedJdk + ) { val (firstProject, secondProject) = prepareTestProjects( "kapt2/android-dagger", gradleVersion, - defaultBuildOptions.copy(androidVersion = TestVersions.AGP.AGP_42.version) + defaultBuildOptions.copy(androidVersion = agpVersion), + jdkProvider.location ) { it.subProject("app").buildGradle.append("\nkapt.useBuildCache = true") } @@ -191,15 +208,21 @@ class BuildCacheRelocationIT : KGPBaseTest() { ) } - @JvmGradlePluginTests + @AndroidGradlePluginTests @DisplayName("KT-48849: Kotlin compile should ignore empty layout resource directories added by kotlin android extensions") @GradleTestVersions(minVersion = TestVersions.Gradle.G_6_8) - @GradleTest - fun compileIgnoreEmptyAndroidResLayoutDirs(gradleVersion: GradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun compileIgnoreEmptyAndroidResLayoutDirs( + gradleVersion: GradleVersion, + agpVersion: String, + jdkProvider: JdkVersions.ProvidedJdk + ) { val (firstProject, secondProject) = prepareTestProjects( "AndroidExtensionsProject", gradleVersion, - defaultBuildOptions.copy(androidVersion = TestVersions.AGP.AGP_42.version) + defaultBuildOptions.copy(androidVersion = agpVersion), + jdkProvider.location ) { it.subProject("app").buildGradle.append( """ @@ -225,7 +248,7 @@ class BuildCacheRelocationIT : KGPBaseTest() { ) } - @OtherGradlePluginTests // TODO: change to native tag + @NativeGradlePluginTests @DisplayName("with native project") @GradleTest fun testRelocationNative(gradleVersion: GradleVersion) { @@ -291,14 +314,15 @@ class BuildCacheRelocationIT : KGPBaseTest() { projectName: String, gradleVersion: GradleVersion, buildOptions: BuildOptions = defaultBuildOptions, + buildJdk: File? = null, additionalConfiguration: (TestProject) -> Unit = {} ): Pair { - val firstProject = project(projectName, gradleVersion, buildOptions) { + val firstProject = project(projectName, gradleVersion, buildOptions, buildJdk = buildJdk) { enableLocalBuildCache(localBuildCacheDir) additionalConfiguration(this) } - val secondProject = project(projectName, gradleVersion, buildOptions) { + val secondProject = project(projectName, gradleVersion, buildOptions, buildJdk = buildJdk) { enableLocalBuildCache(localBuildCacheDir) additionalConfiguration(this) } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationAvoidanceIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationAvoidanceIT.kt index cababff4d87..bb492da820d 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationAvoidanceIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationAvoidanceIT.kt @@ -25,14 +25,20 @@ class ConfigurationAvoidanceIT : KGPBaseTest() { } } - @JvmGradlePluginTests // TODO: move it into Android tests tag + @AndroidGradlePluginTests @DisplayName("Android unrelated tasks are not configured") - @GradleTestVersions(minVersion = TestVersions.Gradle.G_6_7) - @GradleTest - fun testAndroidUnrelatedTaskNotConfigured(gradleVersion: GradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun testAndroidUnrelatedTaskNotConfigured( + gradleVersion: GradleVersion, + agpVersion: String, + providedJdk: JdkVersions.ProvidedJdk + ) { project( "AndroidProject", - gradleVersion + gradleVersion, + buildOptions = defaultBuildOptions.copy(androidVersion = agpVersion), + buildJdk = providedJdk.location ) { listOf("Android", "Test").forEach { subproject -> @@ -69,12 +75,7 @@ class ConfigurationAvoidanceIT : KGPBaseTest() { """.trimIndent() ) - build( - "help", - buildOptions = defaultBuildOptions.copy( - androidVersion = TestVersions.AGP.AGP_42.version - ) - ) + build("help") } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationCacheForAndroidIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationCacheForAndroidIT.kt index 0a721201750..981c10831f8 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationCacheForAndroidIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/ConfigurationCacheForAndroidIT.kt @@ -15,7 +15,7 @@ import org.junit.jupiter.api.DisplayName @JvmGradlePluginTests class ConfigurationCacheForAndroidIT : AbstractConfigurationCacheIT() { override val defaultBuildOptions = super.defaultBuildOptions.copy( - androidVersion = AGP_42.version + androidVersion = AGP_42 ) @DisplayName("works in android plus kapt project") diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KaptIncrementalWithIsolatingApt.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KaptIncrementalWithIsolatingApt.kt index 6dd3d080fdc..8fd5fa8aaaa 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KaptIncrementalWithIsolatingApt.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KaptIncrementalWithIsolatingApt.kt @@ -284,14 +284,21 @@ class KaptIncrementalWithIsolatingApt : KaptIncrementalIT() { } } + @AndroidGradlePluginTests @DisplayName("KT-34340: origins in classpath") - @GradleTest + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest @DisabledOnOs(OS.WINDOWS, disabledReason = "https://youtrack.jetbrains.com/issue/KTI-405") - fun testIsolatingWithOriginsInClasspath(gradleVersion: GradleVersion) { + fun testIsolatingWithOriginsInClasspath( + gradleVersion: GradleVersion, + agpVersion: String, + providedJdk: JdkVersions.ProvidedJdk + ) { project( "kaptIncrementalWithParceler", gradleVersion, - buildOptions = defaultBuildOptions.copy(androidVersion = TestVersions.AGP.AGP_42.version) + buildOptions = defaultBuildOptions.copy(androidVersion = agpVersion), + buildJdk = providedJdk.location ) { build("clean", ":mylibrary:assembleDebug") diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinJavaToolchainTest.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinJavaToolchainTest.kt index a5aded01af4..dfd77991cc9 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinJavaToolchainTest.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinJavaToolchainTest.kt @@ -492,11 +492,21 @@ class KotlinJavaToolchainTest : KGPBaseTest() { } } + @AndroidGradlePluginTests @DisplayName("Toolchain should take into account kotlin options that are set via android extension") - @GradleTestVersions - @GradleTest - internal fun kotlinOptionsAndroidAndToolchain(gradleVersion: GradleVersion) { - project("android".fullProjectName, gradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + internal fun kotlinOptionsAndroidAndToolchain( + gradleVersion: GradleVersion, + agpVersion: String, + providedJdk: JdkVersions.ProvidedJdk + ) { + project( + "android".fullProjectName, + gradleVersion, + buildOptions = defaultBuildOptions.copy(androidVersion = agpVersion), + buildJdk = providedJdk.location + ) { useToolchainExtension(11) //language=properties @@ -507,12 +517,7 @@ class KotlinJavaToolchainTest : KGPBaseTest() { """.trimIndent() ) - build( - "assembleDebug", - buildOptions = defaultBuildOptions.copy( - androidVersion = TestVersions.AGP.AGP_42.version - ) - ) + build("assembleDebug") } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt index b9636bd610d..01259a68426 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt @@ -110,7 +110,7 @@ class KotlinSpecificDependenciesIT : KGPBaseTest() { gradleVersion, buildOptions = defaultBuildOptions.copy( androidVersion = agpVersion, - warningMode = if (agpVersion == TestVersions.AGP.AGP_36.version) WarningMode.Summary else defaultBuildOptions.warningMode + warningMode = if (agpVersion == TestVersions.AGP.AGP_36) WarningMode.Summary else defaultBuildOptions.warningMode ), buildJdk = jdkVersion.location ) { @@ -132,7 +132,7 @@ class KotlinSpecificDependenciesIT : KGPBaseTest() { gradleVersion, buildOptions = defaultBuildOptions.copy( androidVersion = agpVersion, - warningMode = if (agpVersion == TestVersions.AGP.AGP_36.version) WarningMode.Summary else defaultBuildOptions.warningMode + warningMode = if (agpVersion == TestVersions.AGP.AGP_36) WarningMode.Summary else defaultBuildOptions.warningMode ), buildJdk = jdkVersion.location ) { @@ -298,7 +298,7 @@ class KotlinSpecificDependenciesIT : KGPBaseTest() { gradleVersion, buildOptions = defaultBuildOptions.copy( androidVersion = agpVersion, - warningMode = if (agpVersion == TestVersions.AGP.AGP_36.version) WarningMode.Summary else defaultBuildOptions.warningMode + warningMode = if (agpVersion == TestVersions.AGP.AGP_36) WarningMode.Summary else defaultBuildOptions.warningMode ), buildJdk = jdkVersion.location ) { @@ -325,7 +325,7 @@ class KotlinSpecificDependenciesIT : KGPBaseTest() { gradleVersion, buildOptions = defaultBuildOptions.copy( androidVersion = agpVersion, - warningMode = if (agpVersion == TestVersions.AGP.AGP_36.version) WarningMode.Summary else defaultBuildOptions.warningMode + warningMode = if (agpVersion == TestVersions.AGP.AGP_36) WarningMode.Summary else defaultBuildOptions.warningMode ), buildJdk = jdkVersion.location ) { diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/SubpluginsIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/SubpluginsIT.kt index 21ebebd4ad2..08186460f65 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/SubpluginsIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/SubpluginsIT.kt @@ -146,10 +146,21 @@ class SubpuginsIT : KGPBaseTest() { } } + @AndroidGradlePluginTests @DisplayName("KT-39809: kapt subplugin legacy loading does not fail the build") - @GradleTest - fun testKotlinVersionDowngradeInSupbrojectKt39809(gradleVersion: GradleVersion) { - project("kapt2/android-dagger", gradleVersion) { + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_42) + @GradleAndroidTest + fun testKotlinVersionDowngradeInSupbrojectKt39809( + gradleVersion: GradleVersion, + agpVersion: String, + providedJdk: JdkVersions.ProvidedJdk + ) { + project( + "kapt2/android-dagger", + gradleVersion, + buildOptions = defaultBuildOptions.copy(androidVersion = agpVersion), + buildJdk = providedJdk.location + ) { subProject("app").buildGradle.modify { """ buildscript { @@ -165,12 +176,7 @@ class SubpuginsIT : KGPBaseTest() { """.trimIndent() } - build( - ":app:compileDebugKotlin", - buildOptions = defaultBuildOptions.copy( - androidVersion = TestVersions.AGP.AGP_42.version - ) - ) + build(":app:compileDebugKotlin") } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinAndroidExtensionIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinAndroidExtensionIT.kt index 9b9b7624c5c..8054940c50a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinAndroidExtensionIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinAndroidExtensionIT.kt @@ -18,7 +18,7 @@ import kotlin.test.assertTrue @OtherGradlePluginTests class KotlinAndroidExtensionIT : KGPBaseTest() { override val defaultBuildOptions = super.defaultBuildOptions.copy( - androidVersion = TestVersions.AGP.AGP_36.version, + androidVersion = TestVersions.AGP.AGP_36, warningMode = WarningMode.Summary ) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinProjectIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinProjectIT.kt index 2b0341988fd..a0c9ab70da0 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinProjectIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/model/KotlinProjectIT.kt @@ -18,7 +18,7 @@ import kotlin.test.assertTrue @OtherGradlePluginTests class KotlinProjectIT : KGPBaseTest() { override val defaultBuildOptions = super.defaultBuildOptions.copy( - androidVersion = TestVersions.AGP.AGP_36.version, + androidVersion = TestVersions.AGP.AGP_36, ) @DisplayName("Valid model is available in Kotlin only project") diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/TestVersions.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/TestVersions.kt index f9ed4585476..7a11b9dd89b 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/TestVersions.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/TestVersions.kt @@ -33,24 +33,32 @@ interface TestVersions { get() = System.getProperty("kotlinVersion") ?: error("Required to specify kotlinVersion system property for tests") } - enum class AGP( + object AGP { + const val AGP_36 = "3.6.4" + const val AGP_40 = "4.0.2" + const val AGP_41 = "4.1.3" + const val AGP_42 = "4.2.2" + const val AGP_70 = "7.0.4" + const val AGP_71 = "7.1.3" + const val AGP_72 = "7.2.1" + + const val MIN_SUPPORTED = AGP_36 // KotlinAndroidPlugin.MINIMAL_SUPPORTED_AGP_VERSION + const val MAX_SUPPORTED = AGP_70 // Update once Gradle MAX_SUPPORTED version will be bumped to 7.2+ + } + + enum class AgpCompatibilityMatrix( val version: String, val minSupportedGradleVersion: GradleVersion, val maxSupportedGradleVersion: GradleVersion, val requiredJdkVersion: JavaVersion ) { - AGP_36("3.6.4", GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), - AGP_40("4.0.2", GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), - AGP_41("4.1.3", GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), - AGP_42("4.2.2", GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), - AGP_70("7.0.4", GradleVersion.version(Gradle.G_7_0), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), - AGP_71("7.1.3", GradleVersion.version(Gradle.G_7_2), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), - AGP_72("7.2.1", GradleVersion.version(Gradle.G_7_3), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), + AGP_36(AGP.AGP_36, GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), + AGP_40(AGP.AGP_40, GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), + AGP_41(AGP.AGP_41, GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), + AGP_42(AGP.AGP_42, GradleVersion.version(Gradle.MIN_SUPPORTED), GradleVersion.version(Gradle.G_6_9), JavaVersion.VERSION_1_8), + AGP_70(AGP.AGP_70, GradleVersion.version(Gradle.G_7_0), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), + AGP_71(AGP.AGP_71, GradleVersion.version(Gradle.G_7_2), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), + AGP_72(AGP.AGP_72, GradleVersion.version(Gradle.G_7_3), GradleVersion.version(Gradle.G_7_4), JavaVersion.VERSION_11), ; - - companion object { - const val MIN_SUPPORTED = "3.6.4" // AGP_36 - KotlinAndroidPlugin.MINIMAL_SUPPORTED_AGP_VERSION - const val MAX_SUPPORTED = "7.0.4" // AGP_70 - Update once Gradle MAX_SUPPORTED version will be bumped to 7.2+ - } } } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/arumentProviders.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/arumentProviders.kt index 6acfa040772..3e70d0dbac1 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/arumentProviders.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/arumentProviders.kt @@ -156,17 +156,17 @@ class GradleAndAgpArgumentsProvider : GradleArgumentsProvider() { context: ExtensionContext ): Stream { val agpVersionsAnnotation = findAnnotation(context) - val agpVersions = setOf( + val agpVersions = setOfNotNull( agpVersionsAnnotation.minVersion, *agpVersionsAnnotation.additionalVersions, - agpVersionsAnnotation.maxVersion + if (agpVersionsAnnotation.minVersion < agpVersionsAnnotation.maxVersion) agpVersionsAnnotation.maxVersion else null ) val gradleVersions = super.provideArguments(context).map { it.get().first() as GradleVersion }.toList() return agpVersions .flatMap { version -> - val agpVersion = TestVersions.AGP.values().find { it.version == version } + val agpVersion = TestVersions.AgpCompatibilityMatrix.values().find { it.version == version } ?: throw IllegalArgumentException("AGP version $version is not defined in TestVersions.AGP!") val providedJdk = JdkVersions.ProvidedJdk(