[KPM] kotlin-gradle-plugin-idea: Implement -Psnapshot property

When set, the backwards compatibility test will run against
a locally installed snapshot version

KT-51262
KT-51220
This commit is contained in:
sebastian.sellmair
2022-02-15 10:10:24 +01:00
committed by Space
parent 5ad1292b67
commit 82ec54aead
@@ -2,6 +2,10 @@ plugins {
kotlin("jvm") kotlin("jvm")
} }
object BackwardsCompatibilityTestConfiguration {
const val minimalBackwardsCompatibleVersion = "1.7.0-dev-1868"
}
kotlin.sourceSets.configureEach { kotlin.sourceSets.configureEach {
languageSettings.apiVersion = "1.4" languageSettings.apiVersion = "1.4"
languageSettings.languageVersion = "1.4" languageSettings.languageVersion = "1.4"
@@ -19,15 +23,22 @@ dependencies {
publish() publish()
tasks.test { tasks.test {
/* When -Psnapshot is set, then the test runs against a locally installed snapshot version (./gradlew install) */
val isSnapshotTest = project.providers.gradleProperty("snapshot").isPresent
repositories { repositories {
maven("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev") maven("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev")
if (isSnapshotTest) mavenLocal()
} }
/* Setup for backwards compatibility test */ /* Setup for backwards compatibility test */
val minimalBackwardsCompatibleVersion = "1.7.0-dev-1868" val version = if (isSnapshotTest) properties["defaultSnapshotVersion"].toString()
else BackwardsCompatibilityTestConfiguration.minimalBackwardsCompatibleVersion
val minimalBackwardsCompatibleVersionTestClasspath by configurations.creating val minimalBackwardsCompatibleVersionTestClasspath by configurations.creating
dependencies { dependencies {
minimalBackwardsCompatibleVersionTestClasspath("org.jetbrains.kotlin:kotlin-gradle-plugin-idea:$minimalBackwardsCompatibleVersion") minimalBackwardsCompatibleVersionTestClasspath("org.jetbrains.kotlin:kotlin-gradle-plugin-idea:$version")
} }
dependsOn(minimalBackwardsCompatibleVersionTestClasspath) dependsOn(minimalBackwardsCompatibleVersionTestClasspath)