[Gradle] Bump max Gradle version in tests to 8.5

^KT-62540 Verification Pending
This commit is contained in:
Yahor Berdnikau
2024-01-25 10:36:42 +01:00
committed by Space Team
parent 8f2fc3d1e2
commit a40459c520
18 changed files with 70 additions and 71 deletions
@@ -223,7 +223,7 @@ fun Test.includeTestsWithPattern(include: Boolean, patterns: (MutableSet<String>
}
fun Test.advanceGradleVersion() {
val gradleVersionForTests = "8.4"
val gradleVersionForTests = "8.5"
systemProperty("kotlin.gradle.version.for.tests", gradleVersionForTests)
}
@@ -20,11 +20,7 @@ import org.gradle.api.logging.LogLevel
import org.gradle.testkit.runner.BuildResult
import org.gradle.util.GradleVersion
import org.jetbrains.kotlin.gradle.testbase.*
import org.jetbrains.kotlin.gradle.util.capitalize
import org.jetbrains.kotlin.konan.target.HostManager
import org.jetbrains.kotlin.konan.target.presetName
import org.junit.jupiter.api.DisplayName
import org.junit.jupiter.api.io.TempDir
import java.io.File
import java.nio.file.Path
import kotlin.io.path.*
@@ -17,7 +17,6 @@ class BuildFusStatisticsIT : KGPDaemonsBaseTest() {
@GradleTest
@GradleTestVersions(
additionalVersions = [TestVersions.Gradle.G_7_6, TestVersions.Gradle.G_8_0, TestVersions.Gradle.G_8_2, TestVersions.Gradle.G_8_3],
maxVersion = TestVersions.Gradle.G_8_5
)
fun testCompatibilityBuildSrcWithKotlinDsl(gradleVersion: GradleVersion) {
project(
@@ -147,9 +147,15 @@ class JsIrConfigurationCacheIT : KGPBaseTest() {
project("kotlin-js-nodejs-project", gradleVersion) {
build("nodeRun", buildOptions = buildOptions) {
assertTasksExecuted(":nodeRun")
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: nodeRun"
)
if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_8_5)) {
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: nodeRun"
)
} else {
assertOutputContains(
"Calculating task graph as no cached configuration is available for tasks: nodeRun"
)
}
assertConfigurationCacheStored()
}
@@ -215,7 +215,8 @@ class SimpleKotlinGradleIT : KGPBaseTest() {
TestVersions.Gradle.G_8_0,
TestVersions.Gradle.G_8_1,
TestVersions.Gradle.G_8_2,
TestVersions.Gradle.G_8_3
TestVersions.Gradle.G_8_3,
TestVersions.Gradle.G_8_4,
],
)
@GradleTest
@@ -223,6 +224,7 @@ class SimpleKotlinGradleIT : KGPBaseTest() {
project("kotlinProject", gradleVersion) {
build("help") {
val expectedVariant = when (gradleVersion) {
GradleVersion.version(TestVersions.Gradle.G_8_5) -> "gradle82"
GradleVersion.version(TestVersions.Gradle.G_8_4) -> "gradle82"
GradleVersion.version(TestVersions.Gradle.G_8_3) -> "gradle82"
GradleVersion.version(TestVersions.Gradle.G_8_2) -> "gradle82"
@@ -233,7 +233,11 @@ class UpToDateIT : KGPBaseTest() {
override fun mutateProject(project: TestProject) {
project.buildGradle.modify {
it.replace("archivesBaseName = '$oldName'", "archivesBaseName = '$newName'")
if (project.gradleVersion < GradleVersion.version(TestVersions.Gradle.G_8_5)) {
it.replace("archivesBaseName = '$oldName'", "archivesBaseName = '$newName'")
} else {
it.replace("archivesName = '$oldName'", "archivesName = '$newName'")
}
}
}
@@ -39,9 +39,15 @@ class WasmConfigurationCacheIT : KGPBaseTest() {
) {
build("wasmJsD8Run", buildOptions = buildOptions) {
assertTasksExecuted(":wasmJsD8Run")
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: wasmJsD8Run"
)
if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_8_5)) {
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: wasmJsD8Run"
)
} else {
assertOutputContains(
"Calculating task graph as no cached configuration is available for tasks: wasmJsD8Run"
)
}
assertConfigurationCacheStored()
}
@@ -69,8 +69,11 @@ open class Kapt3AndroidExternalIT : Kapt3BaseIT() {
assertFileInProjectExists("app/build/generated/source/kapt/debug/com/example/dagger/kotlin/DaggerApplicationComponent.java")
assertFileInProjectExists("app/build/generated/source/kapt/debug/com/example/dagger/kotlin/ui/HomeActivity_MembersInjector.java")
val daggerJavaClassesDir =
val daggerJavaClassesDir = if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_8_5)) {
"app/build/intermediates/javac/debug/classes/com/example/dagger/kotlin/"
} else {
"app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/example/dagger/kotlin/"
}
assertFileInProjectExists(daggerJavaClassesDir + "DaggerApplicationComponent.class")
@@ -794,8 +794,7 @@ class KotlinAndroidMppIT : KGPBaseTest() {
}
}
val checkedConsumerAGPVersions = TestVersions.AgpCompatibilityMatrix
.values()
val checkedConsumerAGPVersions = TestVersions.AgpCompatibilityMatrix.entries
.filter { agp -> AGPVersion.fromString(agp.version) < AGPVersion.fromString(TestVersions.AGP.MAX_SUPPORTED) }
checkedConsumerAGPVersions.forEach { consumerAgpVersion ->
@@ -33,7 +33,7 @@ interface TestVersions {
const val MIN_SUPPORTED = minSupportedGradleVersion
const val MIN_SUPPORTED_KPM = G_7_0
const val MAX_SUPPORTED = G_8_4
const val MAX_SUPPORTED = G_8_5
}
object Kotlin {
@@ -52,11 +52,11 @@ interface TestVersions {
const val AGP_80 = "8.0.2"
const val AGP_81 = "8.1.3"
const val AGP_82 = "8.2.0"
const val AGP_83 = "8.3.0-beta02"
const val AGP_83 = "8.3.0-rc02"
const val AGP_84 = "8.4.0-alpha04"
const val MIN_SUPPORTED = AGP_71 // KotlinAndroidPlugin.minimalSupportedAgpVersion
const val MAX_SUPPORTED = AGP_82 // Update once Gradle MAX_SUPPORTED version will be bumped
const val MAX_SUPPORTED = AGP_83 // Update once Gradle MAX_SUPPORTED version will be bumped
}
enum class AgpCompatibilityMatrix(
@@ -71,7 +71,7 @@ interface TestVersions {
AGP_74(AGP.AGP_74, GradleVersion.version(Gradle.G_7_5), GradleVersion.version(Gradle.G_7_6), JavaVersion.VERSION_11),
AGP_80(AGP.AGP_80, GradleVersion.version(Gradle.G_8_0), GradleVersion.version(Gradle.G_8_0), JavaVersion.VERSION_17),
AGP_81(AGP.AGP_81, GradleVersion.version(Gradle.G_8_1), GradleVersion.version(Gradle.G_8_4), JavaVersion.VERSION_17),
AGP_82(AGP.AGP_82, GradleVersion.version(Gradle.G_8_1), GradleVersion.version(Gradle.G_8_4), JavaVersion.VERSION_17),
AGP_82(AGP.AGP_82, GradleVersion.version(Gradle.G_8_2), GradleVersion.version(Gradle.G_8_4), JavaVersion.VERSION_17),
AGP_83(AGP.AGP_83, GradleVersion.version(Gradle.G_8_4), GradleVersion.version(Gradle.G_8_5), JavaVersion.VERSION_17),
AGP_84(AGP.AGP_84, GradleVersion.version(Gradle.G_8_4), GradleVersion.version(Gradle.G_8_5), JavaVersion.VERSION_17),
;
@@ -6,6 +6,7 @@
package org.jetbrains.kotlin.gradle.testbase
import org.gradle.testkit.runner.BuildResult
import org.gradle.util.GradleVersion
import org.jetbrains.kotlin.gradle.BaseGradleIT
/**
@@ -23,9 +24,15 @@ fun TestProject.assertSimpleConfigurationCacheScenarioWorks(
build(*buildArguments, buildOptions = buildOptions) {
assertTasksExecuted(*executedTask.toTypedArray())
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: ${buildArguments.joinToString(separator = " ")}"
)
if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_8_5)) {
assertOutputContains(
"Calculating task graph as no configuration cache is available for tasks: ${buildArguments.joinToString(separator = " ")}"
)
} else {
assertOutputContains(
"Calculating task graph as no cached configuration is available for tasks: ${buildArguments.joinToString(separator = " ")}"
)
}
assertConfigurationCacheStored()
}
@@ -161,7 +161,16 @@ fun GradleProject.addPropertyToGradleProperties(
internal fun TestProject.addArchivesBaseNameCompat(
archivesBaseName: String
) {
if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_7_1)) {
if (gradleVersion >= GradleVersion.version(TestVersions.Gradle.G_8_5)) {
buildGradle.appendText(
"""
|
|base {
| archivesName = '$archivesBaseName'
|}
""".trimMargin()
)
} else if (gradleVersion < GradleVersion.version(TestVersions.Gradle.G_7_1)) {
buildGradle.appendText(
"""
|
@@ -1,5 +1,3 @@
import org.gradle.util.VersionNumber
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
@@ -44,32 +42,14 @@ android {
}
}
publishNonDefault true
if (GradleVersion.current() < GradleVersion.version("8.5")) {
publishNonDefault true
}
lintOptions.abortOnError = false
}
if (VersionNumber.parse(android_tools_version) < VersionNumber.parse("3.0.0-alpha1")) {
configurations {
flavor1DebugCompile
flavor1ReleaseCompile
flavor2DebugCompile
flavor2ReleaseCompile
}
dependencies {
flavor1DebugCompile project(path: ':Lib', configuration: 'flavor1Debug')
flavor1ReleaseCompile project(path: ':Lib', configuration: 'flavor1Release')
flavor2DebugCompile project(path: ':Lib', configuration: 'flavor2Debug')
flavor2ReleaseCompile project(path: ':Lib', configuration: 'flavor2Release')
}
}
else {
dependencies {
implementation project(":Lib")
}
}
dependencies {
implementation project(":Lib")
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
testImplementation'junit:junit:4.13.2'
}
@@ -38,6 +38,8 @@ android {
flavor2 { dimension "myFlavor" }
}
publishNonDefault true
if (GradleVersion.current() < GradleVersion.version("8.5")) {
publishNonDefault true
}
lintOptions.abortOnError = false
}
@@ -1,12 +1,9 @@
import org.gradle.util.VersionNumber
plugins {
id 'com.android.test'
id 'org.jetbrains.kotlin.android'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "junit:junit:4.13.2"
}
@@ -32,18 +29,13 @@ android {
}
targetProjectPath ':Android'
if (VersionNumber.parse(android_tools_version) < VersionNumber.parse("3.0.0-alpha1")) {
targetVariant 'flavor1Debug'
}
else {
flavorDimensions "myFlavor"
productFlavors {
flavor1 {
dimension "myFlavor"
}
flavor2 {
dimension "myFlavor"
}
flavorDimensions "myFlavor"
productFlavors {
flavor1 {
dimension "myFlavor"
}
flavor2 {
dimension "myFlavor"
}
}
lintOptions.abortOnError = false
@@ -1,4 +1 @@
rootProject.name = "kotlin-js-npm-overrides"
include("base")
include("lib")