From e6c0d739895df5068c3edfea5a8027c074f88370 Mon Sep 17 00:00:00 2001 From: "sebastian.sellmair" Date: Fri, 17 Jun 2022 09:24:28 +0200 Subject: [PATCH] [kotlin-tooling-core] Support 'pub' suffix for KotlinToolingVersion --- .../tooling/core/KotlinToolingVersion.kt | 2 +- .../tooling/core/KotlinToolingVersionTest.kt | 24 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/libraries/tools/kotlin-tooling-core/src/main/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersion.kt b/libraries/tools/kotlin-tooling-core/src/main/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersion.kt index 5ea2e78a1c0..7349e5464e4 100644 --- a/libraries/tools/kotlin-tooling-core/src/main/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersion.kt +++ b/libraries/tools/kotlin-tooling-core/src/main/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersion.kt @@ -53,7 +53,7 @@ class KotlinToolingVersion( classifier.matches(Regex("""beta(\d*)?(-release)?-?\d*""")) -> Maturity.BETA classifier.matches(Regex("""alpha(\d*)?(-release)?-?\d*""")) -> Maturity.ALPHA classifier.matches(Regex("""m\d+(-release)?(-\d*)?""")) -> Maturity.MILESTONE - classifier.matches(Regex("""dev-?\d*""")) -> Maturity.DEV + classifier.matches(Regex("""(dev|pub)-?\d*""")) -> Maturity.DEV classifier == "snapshot" -> Maturity.SNAPSHOT else -> throw IllegalArgumentException("Can't infer maturity of KotlinVersion $this") } diff --git a/libraries/tools/kotlin-tooling-core/src/test/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersionTest.kt b/libraries/tools/kotlin-tooling-core/src/test/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersionTest.kt index 0a43b4dcd4b..398c6635464 100644 --- a/libraries/tools/kotlin-tooling-core/src/test/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersionTest.kt +++ b/libraries/tools/kotlin-tooling-core/src/test/kotlin/org/jetbrains/kotlin/tooling/core/KotlinToolingVersionTest.kt @@ -82,6 +82,10 @@ class KotlinToolingVersionTest { assertTrue( KotlinToolingVersion("1.7.0-dev") > KotlinToolingVersion("1.7.0-snapshot") ) + + assertEquals( + 0, KotlinToolingVersion("1.7.20-dev").compareTo(KotlinToolingVersion("1.7.20-pub")) + ) } @Test @@ -184,6 +188,26 @@ class KotlinToolingVersionTest { KotlinToolingVersion.Maturity.MILESTONE, KotlinToolingVersion("1.6.20-M2411-1901").maturity ) + + assertEquals( + KotlinToolingVersion.Maturity.DEV, + KotlinToolingVersion("1.6.20-dev-2411").maturity + ) + + assertEquals( + KotlinToolingVersion.Maturity.DEV, + KotlinToolingVersion("1.6.20-DeV").maturity + ) + + assertEquals( + KotlinToolingVersion.Maturity.DEV, + KotlinToolingVersion("1.6.20-pub-2411").maturity + ) + + assertEquals( + KotlinToolingVersion.Maturity.DEV, + KotlinToolingVersion("1.6.20-pUb").maturity + ) } @Test