JVM IR: generate tests on incremental compilation

This commit is contained in:
Alexander Udalov
2019-07-22 19:46:10 +02:00
parent e1fc2c57cb
commit 73a671af7c
20 changed files with 2737 additions and 201 deletions
@@ -0,0 +1,16 @@
/*
* Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.incremental
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
import java.io.File
abstract class AbstractIrIncrementalJvmCompilerRunnerTest : AbstractIncrementalJvmCompilerRunnerTest() {
override fun createCompilerArguments(destinationDir: File, testDir: File): K2JVMCompilerArguments =
super.createCompilerArguments(destinationDir, testDir).apply {
useIR = true
}
}
@@ -156,9 +156,9 @@ import org.jetbrains.kotlin.search.AbstractAnnotatedMembersSearchTest
import org.jetbrains.kotlin.search.AbstractInheritorsSearchTest
import org.jetbrains.kotlin.shortenRefs.AbstractShortenRefsTest
import org.jetbrains.kotlin.test.TargetBackend
import org.jetbrains.kotlinx.serialization.AbstractSerializationIrBytecodeListingTest
import org.jetbrains.kotlinx.serialization.AbstractSerializationPluginBytecodeListingTest
import org.jetbrains.kotlinx.serialization.AbstractSerializationPluginDiagnosticTest
import org.jetbrains.kotlinx.serialization.AbstractSerializationIrBytecodeListingTest
fun main(args: Array<String>) {
System.setProperty("java.awt.headless", "true")
@@ -1066,13 +1066,15 @@ fun main(args: Array<String>) {
}
testGroup("compiler/incremental-compilation-impl/test", "jps-plugin/testData") {
testClass<AbstractIncrementalJvmCompilerRunnerTest> {
model("incremental/pureKotlin", extension = null, recursive = false)
model("incremental/classHierarchyAffected", extension = null, recursive = false)
model("incremental/inlineFunCallSite", extension = null, excludeParentDirs = true)
model("incremental/withJava", extension = null, excludeParentDirs = true)
model("incremental/incrementalJvmCompilerOnly", extension = null, excludeParentDirs = true)
fun incrementalJvmTestData(targetBackend: TargetBackend): TestGroup.TestClass.() -> Unit = {
model("incremental/pureKotlin", extension = null, recursive = false, targetBackend = targetBackend)
model("incremental/classHierarchyAffected", extension = null, recursive = false, targetBackend = targetBackend)
model("incremental/inlineFunCallSite", extension = null, excludeParentDirs = true, targetBackend = targetBackend)
model("incremental/withJava", extension = null, excludeParentDirs = true, targetBackend = targetBackend)
model("incremental/incrementalJvmCompilerOnly", extension = null, excludeParentDirs = true, targetBackend = targetBackend)
}
testClass<AbstractIncrementalJvmCompilerRunnerTest>(init = incrementalJvmTestData(TargetBackend.JVM))
testClass<AbstractIrIncrementalJvmCompilerRunnerTest>(init = incrementalJvmTestData(TargetBackend.JVM_IR))
testClass<AbstractIncrementalJsCompilerRunnerTest> {
model("incremental/pureKotlin", extension = null, recursive = false)
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR
@@ -0,0 +1 @@
// IGNORE_BACKEND: JVM_IR