Fix TC compilation and kapt3 tests compilation

This commit is contained in:
Ilya Chernikov
2016-12-20 10:02:01 +01:00
parent 5222768ba1
commit 4f2410ffe0
4 changed files with 13 additions and 3 deletions
+1
View File
@@ -25,6 +25,7 @@
<element id="extracted-dir" path="$PROJECT_DIR$/dependencies/native-platform-uberjar.jar" path-in-jar="/" /> <element id="extracted-dir" path="$PROJECT_DIR$/dependencies/native-platform-uberjar.jar" path-in-jar="/" />
<element id="module-output" name="android-extensions-jps" /> <element id="module-output" name="android-extensions-jps" />
<element id="module-output" name="build-common" /> <element id="module-output" name="build-common" />
<element id="module-output" name="compiler-runner" />
</root> </root>
</artifact> </artifact>
</component> </component>
@@ -18,6 +18,8 @@ package org.jetbrains.kotlin.kapt3.test
import com.intellij.openapi.util.text.StringUtil import com.intellij.openapi.util.text.StringUtil
import com.sun.tools.javac.tree.JCTree import com.sun.tools.javac.tree.JCTree
import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
import org.jetbrains.kotlin.cli.common.messages.PrintingMessageCollector
import org.jetbrains.kotlin.codegen.CodegenTestCase import org.jetbrains.kotlin.codegen.CodegenTestCase
import org.jetbrains.kotlin.codegen.CodegenTestUtil import org.jetbrains.kotlin.codegen.CodegenTestUtil
import org.jetbrains.kotlin.kapt3.AbstractKapt3Extension import org.jetbrains.kotlin.kapt3.AbstractKapt3Extension
@@ -44,6 +46,7 @@ import com.sun.tools.javac.util.List as JavacList
abstract class AbstractKotlinKapt3IntegrationTest : CodegenTestCase() { abstract class AbstractKotlinKapt3IntegrationTest : CodegenTestCase() {
private companion object { private companion object {
val TEST_DATA_DIR = File("plugins/kapt3/testData/kotlinRunner") val TEST_DATA_DIR = File("plugins/kapt3/testData/kotlinRunner")
val messageCollector = PrintingMessageCollector(System.err, MessageRenderer.PLAIN_FULL_PATHS, false)
} }
private lateinit var processors: List<Processor> private lateinit var processors: List<Processor>
@@ -141,7 +144,7 @@ abstract class AbstractKotlinKapt3IntegrationTest : CodegenTestCase() {
outputDir: File, outputDir: File,
options: Map<String, String> options: Map<String, String>
) : AbstractKapt3Extension(PathUtil.getJdkClassesRoots(), emptyList(), javaSourceRoots, outputDir, outputDir, ) : AbstractKapt3Extension(PathUtil.getJdkClassesRoots(), emptyList(), javaSourceRoots, outputDir, outputDir,
options, true, System.currentTimeMillis(), KaptLogger(true) options, true, System.currentTimeMillis(), KaptLogger(true, messageCollector)
) { ) {
internal var savedStubs: String? = null internal var savedStubs: String? = null
@@ -20,6 +20,8 @@ import com.intellij.openapi.util.text.StringUtil
import com.sun.tools.javac.comp.CompileStates import com.sun.tools.javac.comp.CompileStates
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit import com.sun.tools.javac.tree.JCTree.JCCompilationUnit
import com.sun.tools.javac.util.Log import com.sun.tools.javac.util.Log
import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
import org.jetbrains.kotlin.cli.common.messages.PrintingMessageCollector
import org.jetbrains.kotlin.codegen.CodegenTestCase import org.jetbrains.kotlin.codegen.CodegenTestCase
import org.jetbrains.kotlin.codegen.CodegenTestUtil import org.jetbrains.kotlin.codegen.CodegenTestUtil
import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper
@@ -38,6 +40,7 @@ import java.nio.file.Files
abstract class AbstractKotlinKapt3Test : CodegenTestCase() { abstract class AbstractKotlinKapt3Test : CodegenTestCase() {
companion object { companion object {
val FILE_SEPARATOR = "\n\n////////////////////\n\n" val FILE_SEPARATOR = "\n\n////////////////////\n\n"
val messageCollector = PrintingMessageCollector(System.err, MessageRenderer.PLAIN_FULL_PATHS, false)
} }
override fun doMultiFileTest(wholeFile: File, files: List<TestFile>, javaFilesDir: File?) { override fun doMultiFileTest(wholeFile: File, files: List<TestFile>, javaFilesDir: File?) {
@@ -55,7 +58,7 @@ abstract class AbstractKotlinKapt3Test : CodegenTestCase() {
val factory = CodegenTestUtil.generateFiles(myEnvironment, myFiles, classBuilderFactory) val factory = CodegenTestUtil.generateFiles(myEnvironment, myFiles, classBuilderFactory)
val typeMapper = factory.generationState.typeMapper val typeMapper = factory.generationState.typeMapper
val logger = KaptLogger(isVerbose = true) val logger = KaptLogger(isVerbose = true, messageCollector = messageCollector)
val kaptContext = KaptContext(logger, classBuilderFactory.compiledClasses, val kaptContext = KaptContext(logger, classBuilderFactory.compiledClasses,
classBuilderFactory.origins, processorOptions = emptyMap()) classBuilderFactory.origins, processorOptions = emptyMap())
try { try {
@@ -16,6 +16,8 @@
package org.jetbrains.kotlin.kapt3.test package org.jetbrains.kotlin.kapt3.test
import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
import org.jetbrains.kotlin.cli.common.messages.PrintingMessageCollector
import org.jetbrains.kotlin.kapt3.KaptContext import org.jetbrains.kotlin.kapt3.KaptContext
import org.jetbrains.kotlin.kapt3.diagnostic.KaptError import org.jetbrains.kotlin.kapt3.diagnostic.KaptError
import org.jetbrains.kotlin.kapt3.doAnnotationProcessing import org.jetbrains.kotlin.kapt3.doAnnotationProcessing
@@ -48,6 +50,7 @@ import javax.lang.model.element.TypeElement
class JavaKaptContextTest { class JavaKaptContextTest {
companion object { companion object {
private val TEST_DATA_DIR = File("plugins/kapt3/testData/runner") private val TEST_DATA_DIR = File("plugins/kapt3/testData/runner")
val messageCollector = PrintingMessageCollector(System.err, MessageRenderer.PLAIN_FULL_PATHS, false)
fun simpleProcessor() = object : AbstractProcessor() { fun simpleProcessor() = object : AbstractProcessor() {
override fun process(annotations: Set<TypeElement>, roundEnv: RoundEnvironment): Boolean { override fun process(annotations: Set<TypeElement>, roundEnv: RoundEnvironment): Boolean {
@@ -75,7 +78,7 @@ class JavaKaptContextTest {
} }
private fun doAnnotationProcessing(javaSourceFile: File, processor: Processor, outputDir: File) { private fun doAnnotationProcessing(javaSourceFile: File, processor: Processor, outputDir: File) {
KaptContext(KaptLogger(isVerbose = true), KaptContext(KaptLogger(isVerbose = true, messageCollector = messageCollector),
compiledClasses = emptyList(), compiledClasses = emptyList(),
origins = emptyMap(), origins = emptyMap(),
processorOptions = emptyMap() processorOptions = emptyMap()