Skip to content

Commit 5e3118d

Browse files
authored
Merge pull request #168 from gradle/no/kotlin-update
Test latest kotlin version and oldest supported.
2 parents 367d0d9 + 0af53e4 commit 5e3118d

File tree

5 files changed

+30
-6
lines changed

5 files changed

+30
-6
lines changed

src/test/groovy/org/gradle/android/ConfigurationCachingTest.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import org.junit.Assume
66

77
@MultiVersionTest
88
class ConfigurationCachingTest extends AbstractTest {
9-
private static final VersionNumber SUPPORTED_KOTLIN_VERSION = VersionNumber.parse("1.4.30")
9+
private static final VersionNumber SUPPORTED_KOTLIN_VERSION = TestVersions.latestSupportedKotlinVersion()
1010

1111
def "plugin is compatible with configuration cache"() {
1212
Assume.assumeTrue(TestVersions.latestAndroidVersionForCurrentJDK() >= VersionNumber.parse("4.2.0-alpha01"))

src/test/groovy/org/gradle/android/CrossVersionOutcomeAndRelocationTest.groovy

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import org.gradle.util.GradleVersion
77
import org.gradle.util.VersionNumber
88
import spock.lang.Unroll
99

10+
import static org.gradle.android.TestVersions.latestKotlinVersionForGradleVersion
1011
import static org.gradle.android.Versions.android
1112
import static org.gradle.testkit.runner.TaskOutcome.FROM_CACHE
1213
import static org.gradle.testkit.runner.TaskOutcome.NO_SOURCE
@@ -27,12 +28,14 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
2728
def originalDir = temporaryFolder.newFolder()
2829
SimpleAndroidApp.builder(originalDir, cacheDir)
2930
.withAndroidVersion(androidVersion)
31+
.withKotlinVersion(latestKotlinVersionForGradleVersion(gradleVersion))
3032
.build()
3133
.writeProject()
3234

3335
def relocatedDir = temporaryFolder.newFolder()
3436
SimpleAndroidApp.builder(relocatedDir, cacheDir)
3537
.withAndroidVersion(androidVersion)
38+
.withKotlinVersion(latestKotlinVersionForGradleVersion(gradleVersion))
3639
.build()
3740
.writeProject()
3841

src/test/groovy/org/gradle/android/RoomSchemaLocationWorkaroundTest.groovy

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,10 @@ class RoomSchemaLocationWorkaroundTest extends AbstractTest {
1717
private static final List<String> ALL_VARIANTS = ["debug", "release"]
1818

1919
@Unroll
20-
def "schemas are generated into task-specific directory and are cacheable with kotlin and kapt workers enabled (Android #androidVersion)"() {
20+
def "schemas are generated into task-specific directory and are cacheable with kotlin and kapt workers enabled (Android #androidVersion) (Kotlin #kotlinVersion)"() {
2121
SimpleAndroidApp.builder(temporaryFolder.root, cacheDir)
2222
.withAndroidVersion(androidVersion)
23+
.withKotlinVersion(VersionNumber.parse(kotlinVersion))
2324
.build()
2425
.writeProject()
2526
@@ -73,13 +74,15 @@ class RoomSchemaLocationWorkaroundTest extends AbstractTest {
7374
assertMergedSchemaOutputsExist()
7475
7576
where:
76-
androidVersion << TestVersions.latestAndroidVersions
77+
//noinspection GroovyAssignabilityCheck
78+
[androidVersion, kotlinVersion] << [TestVersions.latestAndroidVersions, TestVersions.supportedKotlinVersions].combinations()
7779
}
7880
7981
@Unroll
80-
def "schemas are generated into task-specific directory and are cacheable with kotlin and kapt workers disabled (Android #androidVersion)"() {
82+
def "schemas are generated into task-specific directory and are cacheable with kotlin and kapt workers disabled (Android #androidVersion) (Kotlin #kotlinVersion)"() {
8183
SimpleAndroidApp.builder(temporaryFolder.root, cacheDir)
8284
.withAndroidVersion(androidVersion)
85+
.withKotlinVersion(VersionNumber.parse(kotlinVersion))
8386
.withKaptWorkersDisabled()
8487
.build()
8588
.writeProject()
@@ -134,7 +137,8 @@ class RoomSchemaLocationWorkaroundTest extends AbstractTest {
134137
assertMergedSchemaOutputsExist()
135138
136139
where:
137-
androidVersion << TestVersions.latestAndroidVersions
140+
//noinspection GroovyAssignabilityCheck
141+
[androidVersion, kotlinVersion] << [TestVersions.latestAndroidVersions, TestVersions.supportedKotlinVersions].combinations()
138142
}
139143
140144
@Unroll

src/test/groovy/org/gradle/android/SimpleAndroidApp.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -452,7 +452,7 @@ class SimpleAndroidApp {
452452
RoomConfiguration roomConfiguration = RoomConfiguration.ROOM_EXTENSION
453453

454454
VersionNumber androidVersion = Versions.latestAndroidVersion()
455-
VersionNumber kotlinVersion = VersionNumber.parse("1.3.72")
455+
VersionNumber kotlinVersion = TestVersions.latestSupportedKotlinVersion()
456456
File projectDir
457457
File cacheDir
458458

src/test/groovy/org/gradle/android/TestVersions.groovy

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,21 @@ class TestVersions {
4141
def minorVersions = allCandidateTestVersions.keySet().collect { "${it.major}.${it.minor}" }
4242
return minorVersions.collect { getLatestVersionForAndroid(it) }
4343
}
44+
45+
static List<String> supportedKotlinVersions = ["1.3.72", "1.5.0"]
46+
47+
static VersionNumber oldestSupportedKotlinVersion() {
48+
return VersionNumber.parse(supportedKotlinVersions.first())
49+
}
50+
51+
static VersionNumber latestSupportedKotlinVersion() {
52+
return VersionNumber.parse(supportedKotlinVersions.last())
53+
}
54+
55+
static VersionNumber latestKotlinVersionForGradleVersion(GradleVersion gradleVersion) {
56+
if (gradleVersion < GradleVersion.version("6.1")) {
57+
return oldestSupportedKotlinVersion()
58+
}
59+
return latestSupportedKotlinVersion()
60+
}
4461
}

0 commit comments

Comments
 (0)