Minor, cleanup kapt tests
Fix inspections, reformat
This commit is contained in:
+6
-15
@@ -43,12 +43,10 @@ import org.jetbrains.kotlin.psi.KtFile
|
||||
import org.jetbrains.kotlin.resolve.jvm.extensions.AnalysisHandlerExtension
|
||||
import org.jetbrains.kotlin.test.ConfigurationKind
|
||||
import org.jetbrains.kotlin.test.KotlinTestUtils
|
||||
import org.jetbrains.kotlin.test.util.KtTestUtil
|
||||
import org.jetbrains.kotlin.test.util.trimTrailingWhitespacesAndAddNewlineAtEOF
|
||||
import org.jetbrains.kotlin.utils.PathUtil
|
||||
import java.io.File
|
||||
import java.nio.file.Files
|
||||
import java.util.ArrayList
|
||||
import javax.annotation.processing.Completion
|
||||
import javax.annotation.processing.ProcessingEnvironment
|
||||
import javax.annotation.processing.Processor
|
||||
@@ -80,14 +78,6 @@ abstract class AbstractKotlinKapt3IntegrationTest : KotlinKapt3TestBase() {
|
||||
vararg supportedAnnotations: String,
|
||||
options: Map<String, String> = emptyMap(),
|
||||
process: (Set<TypeElement>, RoundEnvironment, ProcessingEnvironment) -> Unit
|
||||
) = testAP(true, name, options, process, *supportedAnnotations)
|
||||
|
||||
private fun testAP(
|
||||
shouldRun: Boolean,
|
||||
name: String,
|
||||
options: Map<String, String>,
|
||||
process: (Set<TypeElement>, RoundEnvironment, ProcessingEnvironment) -> Unit,
|
||||
vararg supportedAnnotations: String
|
||||
) {
|
||||
this.mutableOptions = options
|
||||
|
||||
@@ -115,7 +105,7 @@ abstract class AbstractKotlinKapt3IntegrationTest : KotlinKapt3TestBase() {
|
||||
annotation: AnnotationMirror?,
|
||||
member: ExecutableElement?,
|
||||
userText: String?
|
||||
): Iterable<Completion>? {
|
||||
): Iterable<Completion> {
|
||||
return emptyList()
|
||||
}
|
||||
|
||||
@@ -126,8 +116,8 @@ abstract class AbstractKotlinKapt3IntegrationTest : KotlinKapt3TestBase() {
|
||||
_processors = listOf(processor)
|
||||
doTest(ktFileName.canonicalPath)
|
||||
|
||||
if (started != shouldRun) {
|
||||
fail("Annotation processor " + (if (shouldRun) "was not started" else "was started"))
|
||||
if (!started) {
|
||||
fail("Annotation processor was not started")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -168,7 +158,7 @@ abstract class AbstractKotlinKapt3IntegrationTest : KotlinKapt3TestBase() {
|
||||
|
||||
mutableOptions?.let { processingOptions.putAll(it) }
|
||||
flags.addAll(kaptFlagsToAdd)
|
||||
flags.removeAll(kaptFlagsToRemove)
|
||||
flags.removeAll(kaptFlagsToRemove.toSet())
|
||||
detectMemoryLeaks = DetectMemoryLeaksMode.NONE
|
||||
}.build()
|
||||
|
||||
@@ -208,7 +198,8 @@ abstract class AbstractKotlinKapt3IntegrationTest : KotlinKapt3TestBase() {
|
||||
|
||||
override fun loadProcessors() = LoadedProcessors(
|
||||
processors.map { IncrementalProcessor(it, DeclaredProcType.NON_INCREMENTAL, logger) },
|
||||
Kapt3ExtensionForTests::class.java.classLoader)
|
||||
Kapt3ExtensionForTests::class.java.classLoader
|
||||
)
|
||||
|
||||
override fun saveStubs(kaptContext: KaptContext, stubs: List<KaptStub>) {
|
||||
if (this.savedStubs != null) {
|
||||
|
||||
+15
-19
@@ -81,11 +81,10 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
super.tearDown()
|
||||
}
|
||||
|
||||
private fun createTempFile(prefix: String, suffix: String, text: String): File {
|
||||
return FileUtil.createTempFile(prefix, suffix, false).apply {
|
||||
private fun createTempJavaFile(prefix: String, text: String): File =
|
||||
FileUtil.createTempFile(prefix, ".java", false).apply {
|
||||
writeText(text)
|
||||
}
|
||||
}
|
||||
|
||||
override fun loadMultiFiles(files: List<TestFile>) {
|
||||
val project = myEnvironment.project
|
||||
@@ -115,11 +114,10 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
|
||||
val project = myEnvironment.project
|
||||
|
||||
val javacOptions = wholeFile.getOptionValues("JAVAC_OPTION")
|
||||
.map { opt ->
|
||||
val (key, value) = opt.split('=').map { it.trim() }.also { assert(it.size == 2) }
|
||||
key to value
|
||||
}.toMap()
|
||||
val javacOptions = wholeFile.getOptionValues("JAVAC_OPTION").associate { opt ->
|
||||
val (key, value) = opt.split('=').map { it.trim() }.also { assert(it.size == 2) }
|
||||
key to value
|
||||
}
|
||||
|
||||
val options = KaptOptions.Builder().apply {
|
||||
projectBaseDir = project.basePath?.let { File(it) }
|
||||
@@ -132,7 +130,7 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
|
||||
this.javacOptions.putAll(javacOptions)
|
||||
flags.addAll(kaptFlagsToAdd)
|
||||
flags.removeAll(kaptFlagsToRemove)
|
||||
flags.removeAll(kaptFlagsToRemove.toSet())
|
||||
|
||||
detectMemoryLeaks = DetectMemoryLeaksMode.NONE
|
||||
}.build()
|
||||
@@ -164,11 +162,9 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
|
||||
val javaFiles = files
|
||||
.filter { it.name.lowercase().endsWith(".java") }
|
||||
.map { createTempFile(it.name.substringBeforeLast('.'), ".java", it.content) }
|
||||
.map { createTempJavaFile(it.name.substringBeforeLast('.'), it.content) }
|
||||
|
||||
check(kaptContext, javaFiles, txtFile, wholeFile)
|
||||
} catch (e: Throwable) {
|
||||
throw RuntimeException(e)
|
||||
} finally {
|
||||
kaptContext?.close()
|
||||
}
|
||||
@@ -191,7 +187,7 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
|
||||
val kaptStubs = converter.convert()
|
||||
val convertedFiles = kaptStubs.map { stub ->
|
||||
val sourceFile = createTempFile("stub", ".java", stub.file.prettyPrint(kaptContext.context))
|
||||
val sourceFile = createTempJavaFile("stub", stub.file.prettyPrint(kaptContext.context))
|
||||
stub.writeMetadataIfNeeded(forSource = sourceFile)
|
||||
sourceFile
|
||||
}
|
||||
@@ -236,10 +232,10 @@ abstract class AbstractKotlinKapt3Test : KotlinKapt3TestBase() {
|
||||
|
||||
open class AbstractClassFileToSourceStubConverterTest : AbstractKotlinKapt3Test(), CustomJdkTestLauncher {
|
||||
companion object {
|
||||
private val KOTLIN_METADATA_GROUP = "[a-z0-9]+ = (\\{.+?\\}|[0-9]+)"
|
||||
private const val KOTLIN_METADATA_GROUP = "[a-z0-9]+ = (\\{.+?\\}|[0-9]+)"
|
||||
private val KOTLIN_METADATA_REGEX = "@kotlin\\.Metadata\\(($KOTLIN_METADATA_GROUP)(, $KOTLIN_METADATA_GROUP)*\\)".toRegex()
|
||||
|
||||
private val EXPECTED_ERROR = "EXPECTED_ERROR"
|
||||
private const val EXPECTED_ERROR = "EXPECTED_ERROR"
|
||||
|
||||
internal fun removeMetadataAnnotationContents(s: String): String {
|
||||
return s.replace(KOTLIN_METADATA_REGEX, "@kotlin.Metadata()")
|
||||
@@ -290,14 +286,14 @@ open class AbstractClassFileToSourceStubConverterTest : AbstractKotlinKapt3Test(
|
||||
|
||||
val convertedFiles = convert(kaptContext, javaFiles, generateNonExistentClass)
|
||||
|
||||
kaptContext.javaLog.interceptorData.files = convertedFiles.map { it.sourceFile to it }.toMap()
|
||||
kaptContext.javaLog.interceptorData.files = convertedFiles.associateBy { it.sourceFile }
|
||||
if (validate) kaptContext.compiler.enterTrees(convertedFiles)
|
||||
|
||||
val actualRaw = convertedFiles
|
||||
.sortedBy { it.sourceFile.name }
|
||||
.joinToString(FILE_SEPARATOR) { it.prettyPrint(kaptContext.context) }
|
||||
|
||||
val actual = StringUtil.convertLineSeparators(actualRaw.trim({ it <= ' ' }))
|
||||
val actual = StringUtil.convertLineSeparators(actualRaw.trim { it <= ' ' })
|
||||
.trimTrailingWhitespacesAndAddNewlineAtEOF()
|
||||
.let { removeMetadataAnnotationContents(it) }
|
||||
|
||||
@@ -318,7 +314,7 @@ open class AbstractClassFileToSourceStubConverterTest : AbstractKotlinKapt3Test(
|
||||
val javaLocation = "($kind:${it.lineNumber}:${it.columnNumber}) "
|
||||
javaLocation + it.getMessage(Locale.US).lines().first()
|
||||
}
|
||||
.map { "// " + EXPECTED_ERROR + it }
|
||||
.map { "// $EXPECTED_ERROR$it" }
|
||||
.sorted()
|
||||
|
||||
log.flush()
|
||||
@@ -358,7 +354,7 @@ abstract class AbstractKotlinKaptContextTest : AbstractKotlinKapt3Test() {
|
||||
|
||||
val stubJavaFiles = kaptContext.options.sourcesOutputDir.walkTopDown().filter { it.isFile && it.extension == "java" }
|
||||
val actualRaw = stubJavaFiles.sortedBy { it.name }.joinToString(FILE_SEPARATOR) { it.name + ":\n\n" + it.readText() }
|
||||
val actual = StringUtil.convertLineSeparators(actualRaw.trim({ it <= ' ' })).trimTrailingWhitespacesAndAddNewlineAtEOF()
|
||||
val actual = StringUtil.convertLineSeparators(actualRaw.trim { it <= ' ' }).trimTrailingWhitespacesAndAddNewlineAtEOF()
|
||||
KotlinTestUtils.assertEqualsToFile(txtFile, actual)
|
||||
}
|
||||
}
|
||||
|
||||
-1
@@ -16,7 +16,6 @@
|
||||
|
||||
package org.jetbrains.kotlin.kapt3.test
|
||||
|
||||
import junit.framework.TestCase
|
||||
import org.jetbrains.kotlin.kapt3.javac.KaptJavaFileObject
|
||||
import org.jetbrains.kotlin.resolve.jvm.extensions.AnalysisHandlerExtension
|
||||
import org.jetbrains.kotlin.utils.addToStdlib.firstIsInstance
|
||||
|
||||
Reference in New Issue
Block a user