[Analysis] migrate analysis modules to use cliArgument helper instead of hardcoded CLI argument names
^KT-63294
This commit is contained in:
committed by
Space Team
parent
6f097dc8f6
commit
063d73fa73
+6
-3
@@ -6,6 +6,9 @@
|
|||||||
package org.jetbrains.kotlin.analysis.test.framework.services.libraries
|
package org.jetbrains.kotlin.analysis.test.framework.services.libraries
|
||||||
|
|
||||||
import org.jetbrains.kotlin.analysis.test.framework.utils.SkipTestException
|
import org.jetbrains.kotlin.analysis.test.framework.utils.SkipTestException
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.cliArgument
|
||||||
import org.jetbrains.kotlin.config.JvmTarget
|
import org.jetbrains.kotlin.config.JvmTarget
|
||||||
import org.jetbrains.kotlin.test.MockLibraryUtil
|
import org.jetbrains.kotlin.test.MockLibraryUtil
|
||||||
import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives
|
import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives
|
||||||
@@ -49,7 +52,7 @@ object CompilerExecutor {
|
|||||||
|
|
||||||
fun parseCompilerOptionsFromTestdata(module: TestModule): List<String> = buildList {
|
fun parseCompilerOptionsFromTestdata(module: TestModule): List<String> = buildList {
|
||||||
module.directives[LanguageSettingsDirectives.API_VERSION].firstOrNull()?.let { apiVersion ->
|
module.directives[LanguageSettingsDirectives.API_VERSION].firstOrNull()?.let { apiVersion ->
|
||||||
addAll(listOf("-api-version", apiVersion.versionString))
|
addAll(listOf(CommonCompilerArguments::apiVersion.cliArgument, apiVersion.versionString))
|
||||||
}
|
}
|
||||||
|
|
||||||
module.directives[LanguageSettingsDirectives.LANGUAGE].firstOrNull()?.let {
|
module.directives[LanguageSettingsDirectives.LANGUAGE].firstOrNull()?.let {
|
||||||
@@ -57,7 +60,7 @@ object CompilerExecutor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
module.directives[JvmEnvironmentConfigurationDirectives.JVM_TARGET].firstOrNull()?.let { jvmTarget ->
|
module.directives[JvmEnvironmentConfigurationDirectives.JVM_TARGET].firstOrNull()?.let { jvmTarget ->
|
||||||
addAll(listOf("-jvm-target", jvmTarget.description))
|
addAll(listOf(K2JVMCompilerArguments::jvmTarget.cliArgument, jvmTarget.description))
|
||||||
|
|
||||||
val jdkHome = when {
|
val jdkHome = when {
|
||||||
jvmTarget <= JvmTarget.JVM_1_8 -> KtTestUtil.getJdk8Home()
|
jvmTarget <= JvmTarget.JVM_1_8 -> KtTestUtil.getJdk8Home()
|
||||||
@@ -67,7 +70,7 @@ object CompilerExecutor {
|
|||||||
else -> error("JDK for $jvmTarget is not found")
|
else -> error("JDK for $jvmTarget is not found")
|
||||||
}
|
}
|
||||||
|
|
||||||
addAll(listOf("-jdk-home", jdkHome.toString()))
|
addAll(listOf(K2JVMCompilerArguments::jdkHome.cliArgument, jdkHome.toString()))
|
||||||
}
|
}
|
||||||
|
|
||||||
addAll(module.directives[Directives.COMPILER_ARGUMENTS])
|
addAll(module.directives[Directives.COMPILER_ARGUMENTS])
|
||||||
|
|||||||
+6
-3
@@ -12,6 +12,9 @@ import com.intellij.openapi.vfs.impl.jar.CoreJarFileSystem
|
|||||||
import org.jetbrains.kotlin.analysis.decompiler.stub.file.ClsKotlinBinaryClassCache
|
import org.jetbrains.kotlin.analysis.decompiler.stub.file.ClsKotlinBinaryClassCache
|
||||||
import org.jetbrains.kotlin.analysis.decompiler.stub.file.DummyFileAttributeService
|
import org.jetbrains.kotlin.analysis.decompiler.stub.file.DummyFileAttributeService
|
||||||
import org.jetbrains.kotlin.analysis.decompiler.stub.file.FileAttributeService
|
import org.jetbrains.kotlin.analysis.decompiler.stub.file.FileAttributeService
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
|
||||||
|
import org.jetbrains.kotlin.cli.common.arguments.cliArgument
|
||||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||||
import org.jetbrains.kotlin.config.LanguageVersion
|
import org.jetbrains.kotlin.config.LanguageVersion
|
||||||
import org.jetbrains.kotlin.test.*
|
import org.jetbrains.kotlin.test.*
|
||||||
@@ -56,12 +59,12 @@ abstract class AbstractDecompiledClassTest : KotlinTestWithEnvironment() {
|
|||||||
|
|
||||||
internal fun getClassFileToDecompile(testData: TestData, useStringTable: Boolean): VirtualFile {
|
internal fun getClassFileToDecompile(testData: TestData, useStringTable: Boolean): VirtualFile {
|
||||||
val extraOptions = buildList {
|
val extraOptions = buildList {
|
||||||
this.add("-Xallow-kotlin-package")
|
this.add(CommonCompilerArguments::allowKotlinPackage.cliArgument)
|
||||||
if (useStringTable) {
|
if (useStringTable) {
|
||||||
this.add("-Xuse-type-table")
|
this.add(K2JVMCompilerArguments::useTypeTable.cliArgument)
|
||||||
}
|
}
|
||||||
this.addAll(testData.additionalCompilerOptions)
|
this.addAll(testData.additionalCompilerOptions)
|
||||||
addAll(listOf("-language-version", getLanguageVersionToCompile().versionString))
|
addAll(listOf(CommonCompilerArguments::languageVersion.cliArgument, getLanguageVersionToCompile().versionString))
|
||||||
}
|
}
|
||||||
val library = CompilerTestUtil.compileJvmLibrary(
|
val library = CompilerTestUtil.compileJvmLibrary(
|
||||||
src = testData.directory.toFile(),
|
src = testData.directory.toFile(),
|
||||||
|
|||||||
Reference in New Issue
Block a user