Add loadJava/compiledKotlinWithStdlib tests to KotlinpCompilerTestDataTest

This commit is contained in:
Alexander Udalov
2019-05-07 12:03:42 +02:00
parent fe52f5fc7c
commit cfa3509860
3 changed files with 9 additions and 8 deletions
@@ -161,7 +161,7 @@ public abstract class AbstractLoadJavaTest extends TestCaseWithTmpdir {
} }
} }
private static void updateConfigurationWithDirectives(String content, CompilerConfiguration configuration) { public static void updateConfigurationWithDirectives(String content, CompilerConfiguration configuration) {
Map<String, String> directives = KotlinTestUtils.parseDirectives(content); Map<String, String> directives = KotlinTestUtils.parseDirectives(content);
LanguageVersionSettings languageVersionSettings = CompilerTestLanguageVersionSettingsKt.parseLanguageVersionSettings(directives); LanguageVersionSettings languageVersionSettings = CompilerTestLanguageVersionSettingsKt.parseLanguageVersionSettings(directives);
if (languageVersionSettings == null) { if (languageVersionSettings == null) {
@@ -37,6 +37,7 @@ class KotlinpCompilerTestDataTest(private val file: File) {
fun computeTestDataFiles(): Collection<Array<*>> { fun computeTestDataFiles(): Collection<Array<*>> {
val baseDirs = listOf( val baseDirs = listOf(
"compiler/testData/loadJava/compiledKotlin", "compiler/testData/loadJava/compiledKotlin",
"compiler/testData/loadJava/compiledKotlinWithStdlib",
"compiler/testData/serialization/builtinsSerializer" "compiler/testData/serialization/builtinsSerializer"
) )
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.checkers.setupLanguageVersionSettingsForCompilerTest
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.codegen.GenerationUtils import org.jetbrains.kotlin.codegen.GenerationUtils
import org.jetbrains.kotlin.jvm.compiler.AbstractLoadJavaTest
import org.jetbrains.kotlin.kotlinp.Kotlinp import org.jetbrains.kotlin.kotlinp.Kotlinp
import org.jetbrains.kotlin.kotlinp.KotlinpSettings import org.jetbrains.kotlin.kotlinp.KotlinpSettings
import org.jetbrains.kotlin.test.ConfigurationKind import org.jetbrains.kotlin.test.ConfigurationKind
@@ -61,13 +62,12 @@ fun compileAndPrintAllFiles(file: File, disposable: Disposable, tmpdir: File, co
} }
private fun compile(file: File, disposable: Disposable, tmpdir: File, forEachOutputFile: (File) -> Unit) { private fun compile(file: File, disposable: Disposable, tmpdir: File, forEachOutputFile: (File) -> Unit) {
val environment = KotlinCoreEnvironment.createForTests( val content = file.readText()
disposable, val configuration = KotlinTestUtils.newConfiguration(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK)
KotlinTestUtils.newConfiguration(ConfigurationKind.ALL, TestJdkKind.MOCK_JDK), AbstractLoadJavaTest.updateConfigurationWithDirectives(content, configuration)
EnvironmentConfigFiles.JVM_CONFIG_FILES val environment = KotlinCoreEnvironment.createForTests(disposable, configuration, EnvironmentConfigFiles.JVM_CONFIG_FILES)
) setupLanguageVersionSettingsForCompilerTests(content, environment)
setupLanguageVersionSettingsForCompilerTests(file.readText(), environment) val ktFile = KotlinTestUtils.createFile(file.name, content, environment.project)
val ktFile = KotlinTestUtils.createFile(file.name, file.readText(), environment.project)
GenerationUtils.compileFileTo(ktFile, environment, tmpdir) GenerationUtils.compileFileTo(ktFile, environment, tmpdir)
for (outputFile in tmpdir.walkTopDown().sortedBy { it.nameWithoutExtension }) { for (outputFile in tmpdir.walkTopDown().sortedBy { it.nameWithoutExtension }) {