Adapt test infrastructure to the latest changes
^KT-43677 In Progress
This commit is contained in:
@@ -19,7 +19,11 @@ package org.jetbrains.kotlin.config
|
|||||||
import org.jetbrains.kotlin.platform.TargetPlatformVersion
|
import org.jetbrains.kotlin.platform.TargetPlatformVersion
|
||||||
import org.jetbrains.org.objectweb.asm.Opcodes
|
import org.jetbrains.org.objectweb.asm.Opcodes
|
||||||
|
|
||||||
enum class JvmTarget(override val description: String) : TargetPlatformVersion {
|
enum class JvmTarget(
|
||||||
|
override val description: String,
|
||||||
|
val descriptionForJavacArgument: String = description,
|
||||||
|
val isPreview: Boolean = false,
|
||||||
|
) : TargetPlatformVersion {
|
||||||
JVM_1_6("1.6"),
|
JVM_1_6("1.6"),
|
||||||
JVM_1_8("1.8"),
|
JVM_1_8("1.8"),
|
||||||
JVM_9("9"),
|
JVM_9("9"),
|
||||||
@@ -29,7 +33,7 @@ enum class JvmTarget(override val description: String) : TargetPlatformVersion {
|
|||||||
JVM_13("13"),
|
JVM_13("13"),
|
||||||
JVM_14("14"),
|
JVM_14("14"),
|
||||||
JVM_15("15"),
|
JVM_15("15"),
|
||||||
JVM_15_PREVIEW("15_PREVIEW"),
|
JVM_15_PREVIEW("15_PREVIEW", descriptionForJavacArgument = "15", isPreview = true),
|
||||||
;
|
;
|
||||||
|
|
||||||
val bytecodeVersion: Int by lazy {
|
val bytecodeVersion: Int by lazy {
|
||||||
|
|||||||
+1
@@ -1,3 +1,4 @@
|
|||||||
|
// JVM_TARGET: 15_PREVIEW
|
||||||
// FILE: MyRec.java
|
// FILE: MyRec.java
|
||||||
public record MyRec(String name) implements KI {
|
public record MyRec(String name) implements KI {
|
||||||
public String getName() {
|
public String getName() {
|
||||||
|
|||||||
+1
@@ -1,3 +1,4 @@
|
|||||||
|
// JVM_TARGET: 15_PREVIEW
|
||||||
// FILE: MyRec.java
|
// FILE: MyRec.java
|
||||||
public record MyRec(String name) {
|
public record MyRec(String name) {
|
||||||
public String getName() {
|
public String getName() {
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
// JVM_TARGET: 15_PREVIEW
|
||||||
// FILE: MyRec.java
|
// FILE: MyRec.java
|
||||||
public record MyRec(String name) {}
|
public record MyRec(String name) {}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -7,7 +7,6 @@ package org.jetbrains.kotlin.codegen
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.cli.common.output.writeAll
|
import org.jetbrains.kotlin.cli.common.output.writeAll
|
||||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
||||||
import org.jetbrains.kotlin.load.kotlin.PackagePartClassUtils
|
|
||||||
import org.jetbrains.kotlin.test.ConfigurationKind
|
import org.jetbrains.kotlin.test.ConfigurationKind
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.jetbrains.kotlin.test.TestJdkKind
|
import org.jetbrains.kotlin.test.TestJdkKind
|
||||||
@@ -36,7 +35,9 @@ abstract class AbstractCustomJDKBlackBoxCodegenTest : AbstractBlackBoxCodegenTes
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun runJavacTask(files: MutableCollection<File>, options: List<String>) {
|
override fun runJavacTask(files: MutableCollection<File>, options: List<String>) {
|
||||||
KotlinTestUtils.compileJavaFilesExternally(files, options + getAdditionalJavacArgs(), getJdkHome())
|
assert(KotlinTestUtils.compileJavaFilesExternally(files, options, getJdkHome())) {
|
||||||
|
"Javac failed: $options on $files"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getTestJdkKind(files: List<TestFile>): TestJdkKind {
|
override fun getTestJdkKind(files: List<TestFile>): TestJdkKind {
|
||||||
@@ -46,7 +47,6 @@ abstract class AbstractCustomJDKBlackBoxCodegenTest : AbstractBlackBoxCodegenTes
|
|||||||
abstract fun getTestJdkKind(): TestJdkKind
|
abstract fun getTestJdkKind(): TestJdkKind
|
||||||
abstract fun getJdkHome(): File
|
abstract fun getJdkHome(): File
|
||||||
|
|
||||||
open fun getAdditionalJavacArgs(): List<String> = emptyList()
|
|
||||||
open fun getAdditionalJvmArgs(): List<String> = emptyList()
|
open fun getAdditionalJvmArgs(): List<String> = emptyList()
|
||||||
|
|
||||||
abstract override fun getPrefix(): String
|
abstract override fun getPrefix(): String
|
||||||
|
|||||||
-2
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.codegen
|
package org.jetbrains.kotlin.codegen
|
||||||
|
|
||||||
import org.jetbrains.kotlin.jvm.compiler.ADDITIONAL_JAVAC_ARGS_FOR_15
|
|
||||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||||
import org.jetbrains.kotlin.test.TestJdkKind
|
import org.jetbrains.kotlin.test.TestJdkKind
|
||||||
import java.io.File
|
import java.io.File
|
||||||
@@ -15,7 +14,6 @@ abstract class AbstractJdk15BlackBoxCodegenTest : AbstractCustomJDKBlackBoxCodeg
|
|||||||
override fun getJdkHome(): File = KotlinTestUtils.getJdk15Home()
|
override fun getJdkHome(): File = KotlinTestUtils.getJdk15Home()
|
||||||
override fun getPrefix(): String = "java15/box"
|
override fun getPrefix(): String = "java15/box"
|
||||||
|
|
||||||
override fun getAdditionalJavacArgs(): List<String> = ADDITIONAL_JAVAC_ARGS_FOR_15
|
|
||||||
override fun getAdditionalJvmArgs(): List<String> = listOf("--enable-preview")
|
override fun getAdditionalJvmArgs(): List<String> = listOf("--enable-preview")
|
||||||
|
|
||||||
override fun verifyWithDex(): Boolean = false
|
override fun verifyWithDex(): Boolean = false
|
||||||
|
|||||||
@@ -556,6 +556,14 @@ public abstract class CodegenTestCase extends KotlinBaseTest<KotlinBaseTest.Test
|
|||||||
for (TestFile file : files) {
|
for (TestFile file : files) {
|
||||||
javacOptions.addAll(InTextDirectivesUtils.findListWithPrefixes(file.content, "// JAVAC_OPTIONS:"));
|
javacOptions.addAll(InTextDirectivesUtils.findListWithPrefixes(file.content, "// JAVAC_OPTIONS:"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (kotlinTarget != null && kotlinTarget.isPreview()) {
|
||||||
|
javacOptions.add("--release");
|
||||||
|
javacOptions.add(kotlinTarget.getDescriptionForJavacArgument());
|
||||||
|
javacOptions.add("--enable-preview");
|
||||||
|
return javacOptions;
|
||||||
|
}
|
||||||
|
|
||||||
String javaTarget = computeJavaTarget(javacOptions, kotlinTarget);
|
String javaTarget = computeJavaTarget(javacOptions, kotlinTarget);
|
||||||
if (javaTarget != null) {
|
if (javaTarget != null) {
|
||||||
javacOptions.add("-source");
|
javacOptions.add("-source");
|
||||||
@@ -574,7 +582,7 @@ public abstract class CodegenTestCase extends KotlinBaseTest<KotlinBaseTest.Test
|
|||||||
if (JAVA_COMPILATION_TARGET != null && !javacOptions.contains("-target"))
|
if (JAVA_COMPILATION_TARGET != null && !javacOptions.contains("-target"))
|
||||||
return JAVA_COMPILATION_TARGET;
|
return JAVA_COMPILATION_TARGET;
|
||||||
if (kotlinTarget != null && kotlinTarget.compareTo(JvmTarget.JVM_1_6) > 0)
|
if (kotlinTarget != null && kotlinTarget.compareTo(JvmTarget.JVM_1_6) > 0)
|
||||||
return kotlinTarget.getDescription();
|
return kotlinTarget.getDescriptionForJavacArgument();
|
||||||
if (IS_SOURCE_6_STILL_SUPPORTED)
|
if (IS_SOURCE_6_STILL_SUPPORTED)
|
||||||
return "1.6";
|
return "1.6";
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
Reference in New Issue
Block a user