From ae967ec31b91bd0cc4a7e7bb898e56d7fcb83949 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Wed, 10 Nov 2021 17:46:56 +0300 Subject: [PATCH] [FIR] Fix detecting version of plugin annotations if it differs from 1.6.255-SNAPSHOT --- .../fir/plugin/services/PluginAnnotationsProvider.kt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/services/PluginAnnotationsProvider.kt b/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/services/PluginAnnotationsProvider.kt index d53994554ba..ec5053bcd0d 100644 --- a/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/services/PluginAnnotationsProvider.kt +++ b/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/services/PluginAnnotationsProvider.kt @@ -12,16 +12,20 @@ import org.jetbrains.kotlin.test.services.EnvironmentConfigurator import org.jetbrains.kotlin.test.services.TestServices import org.jetbrains.kotlin.test.services.assertions import java.io.File +import java.io.FilenameFilter class PluginAnnotationsProvider(testServices: TestServices) : EnvironmentConfigurator(testServices) { companion object { - const val ANNOTATIONS_JAR = - "plugins/fir/fir-plugin-prototype/plugin-annotations/build/libs/plugin-annotations-1.6.255-SNAPSHOT.jar" + private const val ANNOTATIONS_JAR_DIR = "plugins/fir/fir-plugin-prototype/plugin-annotations/build/libs/" + private val ANNOTATIONS_JAR_FILTER = FilenameFilter { _, name -> name.startsWith("plugin-annotations") && name.endsWith(".jar") } } override fun configureCompilerConfiguration(configuration: CompilerConfiguration, module: TestModule) { - val jar = File(ANNOTATIONS_JAR) - testServices.assertions.assertTrue(jar.exists()) { "Jar with annotations does not exist. Please run :plugins:fir:fir-plugin-prototype:plugin-annotations:jar" } + val libDir = File(ANNOTATIONS_JAR_DIR) + testServices.assertions.assertTrue(libDir.exists() && libDir.isDirectory, failMessage) + val jar = libDir.listFiles(ANNOTATIONS_JAR_FILTER)?.firstOrNull() ?: testServices.assertions.fail(failMessage) configuration.addJvmClasspathRoot(jar) } + + private val failMessage = { "Jar with annotations does not exist. Please run :plugins:fir:fir-plugin-prototype:plugin-annotations:jar" } }