[Gradle] Fix jvm target validation test on Gradle 8

^KT-59587 In Progress
This commit is contained in:
Yahor Berdnikau
2023-06-28 11:48:45 +02:00
committed by Space Team
parent 6a80cd596a
commit 447c849b29
@@ -268,13 +268,11 @@ class JvmTargetValidationTest : KGPBaseTest() {
@JvmGradlePluginTests @JvmGradlePluginTests
@DisplayName("Should still do JVM target validation if no java sources are available") @DisplayName("Should still do JVM target validation if no java sources are available")
@GradleTestVersions(maxVersion = TestVersions.Gradle.G_7_6)
@GradleTest @GradleTest
internal fun shouldDoJvmTargetValidationOnNoJavaSources(gradleVersion: GradleVersion) { internal fun shouldDoJvmTargetValidationOnNoJavaSources(gradleVersion: GradleVersion) {
project( project(
projectName = "simple".fullProjectName, projectName = "simple".fullProjectName,
gradleVersion = gradleVersion, gradleVersion = gradleVersion,
buildJdk = getJdk11().javaHome // should differ from default Kotlin jvm target value
) { ) {
//language=properties //language=properties
gradleProperties.append( gradleProperties.append(
@@ -284,23 +282,28 @@ class JvmTargetValidationTest : KGPBaseTest() {
""".trimIndent() """.trimIndent()
) )
build("assemble") { buildGradle.appendText(
"""
|
|kotlin.jvmToolchain(11)
|kotlin.compilerOptions.jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17)
""".trimMargin()
)
build(":compileKotlin") {
assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks) assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks)
} }
} }
} }
@AndroidGradlePluginTests @JvmGradlePluginTests
@DisplayName("Should do JVM target validation if java sources are added and configuration cache is reused") @DisplayName("Should do JVM target validation if java sources are added and configuration cache is reused")
@GradleTestVersions(maxVersion = TestVersions.Gradle.G_7_6)
@AndroidTestVersions(maxVersion = TestVersions.AGP.AGP_74)
@GradleTest @GradleTest
internal fun shouldDoJvmTargetValidationOnNewJavaSourcesAndConfigurationCacheReuse(gradleVersion: GradleVersion) { internal fun shouldDoJvmTargetValidationOnNewJavaSourcesAndConfigurationCacheReuse(gradleVersion: GradleVersion) {
project( project(
projectName = "simple".fullProjectName, projectName = "simple".fullProjectName,
gradleVersion = gradleVersion, gradleVersion = gradleVersion,
buildOptions = defaultBuildOptions.withConfigurationCache, buildOptions = defaultBuildOptions.withConfigurationCache
buildJdk = getJdk11().javaHome // should differ from default Kotlin jvm target value
) { ) {
// Validation mode should be 'warning' because of https://github.com/gradle/gradle/issues/9339 // Validation mode should be 'warning' because of https://github.com/gradle/gradle/issues/9339
// which is fixed in Gradle 7.2 // which is fixed in Gradle 7.2
@@ -312,7 +315,15 @@ class JvmTargetValidationTest : KGPBaseTest() {
""".trimIndent() """.trimIndent()
) )
build("assemble") { buildGradle.appendText(
"""
|
|kotlin.jvmToolchain(11)
|kotlin.compilerOptions.jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17)
""".trimMargin()
)
build(":compileKotlin") {
assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks) assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks)
} }
@@ -332,7 +343,7 @@ class JvmTargetValidationTest : KGPBaseTest() {
) )
} }
build("assemble") { build(":compileKotlin") {
assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks) assertHasDiagnostic(KotlinToolingDiagnostics.InconsistentTargetCompatibilityForKotlinAndJavaTasks)
} }
} }