KT-41456: Incremental KAPT - represent source and class file structure differently
When storing source information needed for type analysis, store .java file and .class file information separately. This is because for class files only declared typed is needed. Tests: updating existing ones ^KT-41456 In Progress
This commit is contained in:
committed by
teamcity
parent
570189e833
commit
c7e73ce88d
+3
-2
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.kapt.base.test.org.jetbrains.kotlin.kapt3.base.incr
|
||||
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.JavaClassCacheManager
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.MentionedTypesTaskListener
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.SourceFileStructure
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.BeforeClass
|
||||
import org.junit.ClassRule
|
||||
@@ -51,9 +52,9 @@ class TestInheritedAnnotation {
|
||||
|
||||
@Test
|
||||
fun testAnnotationInherited() {
|
||||
val shouldInheritAnnotation = cache.javaCache.getStructure(MY_TEST_DIR.resolve("ExtendsBase.java"))!!
|
||||
val shouldInheritAnnotation = cache.javaCache.getStructure(MY_TEST_DIR.resolve("ExtendsBase.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.ExtendsBase"), shouldInheritAnnotation.getDeclaredTypes())
|
||||
assertEquals(setOf("test.ExtendsBase"), shouldInheritAnnotation.declaredTypes)
|
||||
assertEquals(setOf("test.InheritableAnnotation"), shouldInheritAnnotation.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), shouldInheritAnnotation.getPrivateTypes())
|
||||
assertEquals(
|
||||
|
||||
+7
-6
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.kapt.base.test.org.jetbrains.kotlin.kapt3.base.incr
|
||||
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.JavaClassCacheManager
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.MentionedTypesTaskListener
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.SourceFileStructure
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.BeforeClass
|
||||
import org.junit.ClassRule
|
||||
@@ -54,9 +55,9 @@ class ReferencedConstantsTest {
|
||||
|
||||
@Test
|
||||
fun testConstantInField() {
|
||||
val klassA = cache.javaCache.getStructure(MY_TEST_DIR.resolve("A.java"))!!
|
||||
val klassA = cache.javaCache.getStructure(MY_TEST_DIR.resolve("A.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.A"), klassA.getDeclaredTypes())
|
||||
assertEquals(setOf("test.A"), klassA.declaredTypes)
|
||||
assertEquals(emptySet<String>(), klassA.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), klassA.getPrivateTypes())
|
||||
assertEquals(setOf("test.A"), klassA.getMentionedTypes())
|
||||
@@ -70,9 +71,9 @@ class ReferencedConstantsTest {
|
||||
|
||||
@Test
|
||||
fun testConstantInDefaultValue() {
|
||||
val annotationA = cache.javaCache.getStructure(MY_TEST_DIR.resolve("AnnotationA.java"))!!
|
||||
val annotationA = cache.javaCache.getStructure(MY_TEST_DIR.resolve("AnnotationA.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.AnnotationA"), annotationA.getDeclaredTypes())
|
||||
assertEquals(setOf("test.AnnotationA"), annotationA.declaredTypes)
|
||||
assertEquals(emptySet<String>(), annotationA.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), annotationA.getPrivateTypes())
|
||||
assertEquals(setOf("test.AnnotationA"), annotationA.getMentionedTypes())
|
||||
@@ -82,9 +83,9 @@ class ReferencedConstantsTest {
|
||||
|
||||
@Test
|
||||
fun testConstantInAnnotationElementValue() {
|
||||
val annotated = cache.javaCache.getStructure(MY_TEST_DIR.resolve("AnnotatedType.java"))!!
|
||||
val annotated = cache.javaCache.getStructure(MY_TEST_DIR.resolve("AnnotatedType.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.AnnotatedType"), annotated.getDeclaredTypes())
|
||||
assertEquals(setOf("test.AnnotatedType"), annotated.declaredTypes)
|
||||
assertEquals(setOf("test.AnnotationA"), annotated.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), annotated.getPrivateTypes())
|
||||
assertEquals(setOf("test.AnnotatedType", "test.AnnotationA"), annotated.getMentionedTypes())
|
||||
|
||||
+15
-14
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.kapt.base.test.org.jetbrains.kotlin.kapt3.base.incr
|
||||
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.JavaClassCacheManager
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.MentionedTypesTaskListener
|
||||
import org.jetbrains.kotlin.kapt3.base.incremental.SourceFileStructure
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.BeforeClass
|
||||
import org.junit.ClassRule
|
||||
@@ -53,9 +54,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testEnum() {
|
||||
val myEnum = cache.javaCache.getStructure(MY_TEST_DIR.resolve("MyEnum.java"))!!
|
||||
val myEnum = cache.javaCache.getStructure(MY_TEST_DIR.resolve("MyEnum.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.MyEnum"), myEnum.getDeclaredTypes())
|
||||
assertEquals(setOf("test.MyEnum"), myEnum.declaredTypes)
|
||||
assertEquals(emptySet<String>(), myEnum.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), myEnum.getPrivateTypes())
|
||||
assertEquals(setOf("test.MyEnum", "test.TypeGeneratedByApt"), myEnum.getMentionedTypes())
|
||||
@@ -63,7 +64,7 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testMyNumber() {
|
||||
val myNumber = cache.javaCache.getStructure(MY_TEST_DIR.resolve("MyNumber.java"))!!
|
||||
val myNumber = cache.javaCache.getStructure(MY_TEST_DIR.resolve("MyNumber.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(
|
||||
setOf(
|
||||
@@ -74,7 +75,7 @@ class TestComplexIncrementalAptCache {
|
||||
"test.TypeUseAnnotation",
|
||||
"test.AnotherTypeUseAnnotation",
|
||||
"test.ThrowTypeUseAnnotation"
|
||||
), myNumber.getDeclaredTypes()
|
||||
), myNumber.declaredTypes
|
||||
)
|
||||
assertEquals(
|
||||
setOf(
|
||||
@@ -116,9 +117,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testAnnotation() {
|
||||
val numberAnnotation = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberAnnotation.java"))!!
|
||||
val numberAnnotation = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberAnnotation.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.NumberAnnotation", "test.BaseAnnotation"), numberAnnotation.getDeclaredTypes())
|
||||
assertEquals(setOf("test.NumberAnnotation", "test.BaseAnnotation"), numberAnnotation.declaredTypes)
|
||||
assertEquals(setOf("test.BaseAnnotation"), numberAnnotation.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), numberAnnotation.getPrivateTypes())
|
||||
assertEquals(
|
||||
@@ -134,9 +135,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testNumberException() {
|
||||
val numberException = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberException.java"))!!
|
||||
val numberException = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberException.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.NumberException"), numberException.getDeclaredTypes())
|
||||
assertEquals(setOf("test.NumberException"), numberException.declaredTypes)
|
||||
assertEquals(emptySet<String>(), numberException.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), numberException.getPrivateTypes())
|
||||
assertEquals(setOf("test.NumberException", "java.lang.RuntimeException"), numberException.getMentionedTypes())
|
||||
@@ -144,9 +145,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testNumberHolder() {
|
||||
val numberHolder = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberHolder.java"))!!
|
||||
val numberHolder = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberHolder.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.NumberHolder", "test.NumberHolder.MyInnerClass"), numberHolder.getDeclaredTypes())
|
||||
assertEquals(setOf("test.NumberHolder", "test.NumberHolder.MyInnerClass"), numberHolder.declaredTypes)
|
||||
assertEquals(setOf("test.NumberAnnotation"), numberHolder.getMentionedAnnotations())
|
||||
assertEquals(setOf("test.NumberManager"), numberHolder.getPrivateTypes())
|
||||
assertEquals(
|
||||
@@ -166,9 +167,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testNumberManager() {
|
||||
val numberManager = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberManager.java"))!!
|
||||
val numberManager = cache.javaCache.getStructure(MY_TEST_DIR.resolve("NumberManager.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.NumberManager"), numberManager.getDeclaredTypes())
|
||||
assertEquals(setOf("test.NumberManager"), numberManager.declaredTypes)
|
||||
assertEquals(emptySet<String>(), numberManager.getMentionedAnnotations())
|
||||
assertEquals(setOf("test.MyEnum"), numberManager.getPrivateTypes())
|
||||
assertEquals(
|
||||
@@ -182,9 +183,9 @@ class TestComplexIncrementalAptCache {
|
||||
|
||||
@Test
|
||||
fun testGenericNumber() {
|
||||
val genericNumber = cache.javaCache.getStructure(MY_TEST_DIR.resolve("GenericNumber.java"))!!
|
||||
val genericNumber = cache.javaCache.getStructure(MY_TEST_DIR.resolve("GenericNumber.java"))!! as SourceFileStructure
|
||||
|
||||
assertEquals(setOf("test.GenericNumber"), genericNumber.getDeclaredTypes())
|
||||
assertEquals(setOf("test.GenericNumber"), genericNumber.declaredTypes)
|
||||
assertEquals(emptySet<String>(), genericNumber.getMentionedAnnotations())
|
||||
assertEquals(emptySet<String>(), genericNumber.getPrivateTypes())
|
||||
assertEquals(
|
||||
|
||||
Reference in New Issue
Block a user