From 33e16d3761ee20dc4a2adc9e40e76b495e2136f1 Mon Sep 17 00:00:00 2001 From: Simon Ogorodnik Date: Tue, 25 Jan 2022 15:04:01 +0300 Subject: [PATCH] FIR Tests. Fix jdkHome loading, allow to specify jvmTarget for FP test --- .../kotlin/fir/AbstractFullPipelineModularizedTest.kt | 4 +++- .../tests/org/jetbrains/kotlin/fir/AbstractModularizedTest.kt | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractFullPipelineModularizedTest.kt b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractFullPipelineModularizedTest.kt index 25b33b8f7f6..beb808441bb 100644 --- a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractFullPipelineModularizedTest.kt +++ b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractFullPipelineModularizedTest.kt @@ -23,6 +23,7 @@ import java.nio.file.Files import java.nio.file.Path private val USE_BUILD_FILE: Boolean = System.getProperty("fir.bench.use.build.file", "true").toBooleanLenient()!! +private val JVM_TARGET: String = System.getProperty("fir.bench.jvm.target", "1.8") abstract class AbstractFullPipelineModularizedTest : AbstractModularizedTest() { @@ -129,7 +130,7 @@ abstract class AbstractFullPipelineModularizedTest : AbstractModularizedTest() { private fun configureBaseArguments(args: K2JVMCompilerArguments, moduleData: ModuleData, tmp: Path) { args.reportPerf = true - args.jvmTarget = "1.8" + args.jvmTarget = JVM_TARGET args.allowKotlinPackage = true if (USE_BUILD_FILE) { configureArgsUsingBuildFile(args, moduleData, tmp) @@ -165,6 +166,7 @@ abstract class AbstractFullPipelineModularizedTest : AbstractModularizedTest() { val modulesFile = tmp.toFile().resolve("modules.xml") modulesFile.writeText(builder.asText().toString()) args.buildFile = modulesFile.absolutePath + args.jdkHome = moduleData.jdkHome?.absolutePath } abstract fun configureArguments(args: K2JVMCompilerArguments, moduleData: ModuleData) diff --git a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractModularizedTest.kt b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractModularizedTest.kt index da0dd537e12..b82a3561234 100644 --- a/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractModularizedTest.kt +++ b/compiler/fir/modularized-tests/tests/org/jetbrains/kotlin/fir/AbstractModularizedTest.kt @@ -32,6 +32,7 @@ data class ModuleData( val rawJavaSourceRoots: List>, val rawFriendDirs: List, val rawModularJdkRoot: String?, + val rawJdkHome: String?, val isCommon: Boolean ) { val qualifiedName get() = if (name in qualifier) qualifier else "$name.$qualifier" @@ -41,6 +42,7 @@ data class ModuleData( val sources = rawSources.map { it.fixPath() } val javaSourceRoots = rawJavaSourceRoots.map { JavaSourceRootData(it.path.fixPath(), it.packagePrefix) } val friendDirs = rawFriendDirs.map { it.fixPath() } + val jdkHome = rawJdkHome?.fixPath() val modularJdkRoot = rawModularJdkRoot?.fixPath() } @@ -123,6 +125,7 @@ abstract class AbstractModularizedTest : KtUsefulTestCase() { val sources = mutableListOf() val friendDirs = mutableListOf() val timestamp = moduleElement.attributes.getNamedItem("timestamp")?.nodeValue?.toLong() ?: 0 + val jdkHome = moduleElement.attributes.getNamedItem("jdkHome")?.nodeValue var modularJdkRoot: String? = null var isCommon = false @@ -163,6 +166,7 @@ abstract class AbstractModularizedTest : KtUsefulTestCase() { javaSourceRoots, friendDirs, modularJdkRoot, + jdkHome, isCommon ) }