From 921017367a711acbca20e55ff3c148422b6eb4c7 Mon Sep 17 00:00:00 2001 From: Yan Zhulanow Date: Tue, 19 May 2015 21:56:45 +0300 Subject: [PATCH] APT: Add more compiler plugin tests --- .../AnnotationProcessorBoxTestGenerated.java | 40 ++++++++++++++----- .../annotatedGettersSetters.kt | 14 +++++++ .../annotatedGettersSetters/annotations.txt | 8 ++++ .../annotationInSameFile.kt} | 5 ++- .../annotationInSameFile/annotations.txt | 4 ++ .../annotations.txt | 2 +- .../anonymousClasses/anonymousClasses.kt | 15 +++++++ .../nestedClasses/annotations.txt | 1 + .../nestedClasses/nestedClasses.kt | 5 +++ .../platformStatic/annotations.txt | 11 +++++ .../platformStatic/platformStatic.kt | 14 +++++++ 11 files changed, 105 insertions(+), 14 deletions(-) create mode 100644 plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotatedGettersSetters.kt create mode 100644 plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotations.txt rename plugins/annotation-collector/testData/collectToFile/{simple/simple.kt => annotationInSameFile/annotationInSameFile.kt} (55%) create mode 100644 plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotations.txt rename plugins/annotation-collector/testData/collectToFile/{simple => anonymousClasses}/annotations.txt (52%) create mode 100644 plugins/annotation-collector/testData/collectToFile/anonymousClasses/anonymousClasses.kt create mode 100644 plugins/annotation-collector/testData/collectToFile/platformStatic/annotations.txt create mode 100644 plugins/annotation-collector/testData/collectToFile/platformStatic/platformStatic.kt diff --git a/plugins/annotation-collector/test/org/jetbrains/kotlin/annotation/AnnotationProcessorBoxTestGenerated.java b/plugins/annotation-collector/test/org/jetbrains/kotlin/annotation/AnnotationProcessorBoxTestGenerated.java index ee07e3ec1ba..f10744acb93 100644 --- a/plugins/annotation-collector/test/org/jetbrains/kotlin/annotation/AnnotationProcessorBoxTestGenerated.java +++ b/plugins/annotation-collector/test/org/jetbrains/kotlin/annotation/AnnotationProcessorBoxTestGenerated.java @@ -27,53 +27,71 @@ import java.util.regex.Pattern; /** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */ @SuppressWarnings("all") -@TestMetadata("plugins/annotation-collector/testData/codegen/collectToFile") +@TestMetadata("plugins/annotation-collector/testData/collectToFile") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) public class AnnotationProcessorBoxTestGenerated extends AbstractAnnotationProcessorBoxTest { public void testAllFilesPresentInCollectToFile() throws Exception { - JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("plugins/annotation-collector/testData/codegen/collectToFile"), Pattern.compile("^([^\\.]+)$"), false); + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("plugins/annotation-collector/testData/collectToFile"), Pattern.compile("^([^\\.]+)$"), false); + } + + @TestMetadata("annotatedGettersSetters") + public void testAnnotatedGettersSetters() throws Exception { + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/"); + doTest(fileName); + } + + @TestMetadata("annotationInSameFile") + public void testAnnotationInSameFile() throws Exception { + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/annotationInSameFile/"); + doTest(fileName); + } + + @TestMetadata("anonymousClasses") + public void testAnonymousClasses() throws Exception { + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/anonymousClasses/"); + doTest(fileName); } @TestMetadata("classAnnotations") public void testClassAnnotations() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/classAnnotations/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/classAnnotations/"); doTest(fileName); } @TestMetadata("defaultPackage") public void testDefaultPackage() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/defaultPackage/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/defaultPackage/"); doTest(fileName); } @TestMetadata("fieldAnnotations") public void testFieldAnnotations() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/fieldAnnotations/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/fieldAnnotations/"); doTest(fileName); } @TestMetadata("localClasses") public void testLocalClasses() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/localClasses/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/localClasses/"); doTest(fileName); } @TestMetadata("methodAnnotations") public void testMethodAnnotations() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/methodAnnotations/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/methodAnnotations/"); doTest(fileName); } @TestMetadata("nestedClasses") public void testNestedClasses() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/nestedClasses/"); + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/nestedClasses/"); doTest(fileName); } - @TestMetadata("simple") - public void testSimple() throws Exception { - String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/codegen/collectToFile/simple/"); + @TestMetadata("platformStatic") + public void testPlatformStatic() throws Exception { + String fileName = JetTestUtils.navigationMetadata("plugins/annotation-collector/testData/collectToFile/platformStatic/"); doTest(fileName); } } diff --git a/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotatedGettersSetters.kt b/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotatedGettersSetters.kt new file mode 100644 index 00000000000..f84016a152a --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotatedGettersSetters.kt @@ -0,0 +1,14 @@ +package org.test + +import javax.inject.* + +public class SomeClass { + + public val immutableProperty: Int = 5 + [Inject] get + + public var mutableProperty: String = "String" + [Inject] get + [Inject] set + +} \ No newline at end of file diff --git a/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotations.txt b/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotations.txt new file mode 100644 index 00000000000..43ae939e695 --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/annotatedGettersSetters/annotations.txt @@ -0,0 +1,8 @@ +a javax.inject.Inject 0 +p org.test 0 +m 0 0/SomeClass getImmutableProperty +a org.jetbrains.annotations.NotNull 1 +f 1 0/SomeClass mutableProperty +m 0 0/SomeClass getMutableProperty +m 1 0/SomeClass getMutableProperty +m 0 0/SomeClass setMutableProperty diff --git a/plugins/annotation-collector/testData/collectToFile/simple/simple.kt b/plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotationInSameFile.kt similarity index 55% rename from plugins/annotation-collector/testData/collectToFile/simple/simple.kt rename to plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotationInSameFile.kt index 93221a9df5b..2726a0a38fd 100644 --- a/plugins/annotation-collector/testData/collectToFile/simple/simple.kt +++ b/plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotationInSameFile.kt @@ -1,10 +1,11 @@ package org.test -import javax.inject.* +public annotation class SomeAnnotation +SomeAnnotation public class SomeClass { - Inject + SomeAnnotation public fun annotatedFunction() { } diff --git a/plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotations.txt b/plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotations.txt new file mode 100644 index 00000000000..89c154ea586 --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/annotationInSameFile/annotations.txt @@ -0,0 +1,4 @@ +a org.test.SomeAnnotation 0 +p org.test 0 +c 0 0/SomeClass +m 0 0/SomeClass annotatedFunction diff --git a/plugins/annotation-collector/testData/collectToFile/simple/annotations.txt b/plugins/annotation-collector/testData/collectToFile/anonymousClasses/annotations.txt similarity index 52% rename from plugins/annotation-collector/testData/collectToFile/simple/annotations.txt rename to plugins/annotation-collector/testData/collectToFile/anonymousClasses/annotations.txt index f93250b166f..6aa23adc539 100644 --- a/plugins/annotation-collector/testData/collectToFile/simple/annotations.txt +++ b/plugins/annotation-collector/testData/collectToFile/anonymousClasses/annotations.txt @@ -1,3 +1,3 @@ a javax.inject.Inject 0 p org.test 0 -m 0 0/SomeClass annotatedFunction +f 0 0/SomeClass$a$1 property diff --git a/plugins/annotation-collector/testData/collectToFile/anonymousClasses/anonymousClasses.kt b/plugins/annotation-collector/testData/collectToFile/anonymousClasses/anonymousClasses.kt new file mode 100644 index 00000000000..5fe2f907e9e --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/anonymousClasses/anonymousClasses.kt @@ -0,0 +1,15 @@ +package org.test + +import javax.inject.* + +public class SomeClass { + + private fun a() { + object : Any() { + [Inject] + val property: Int = 5 + } + + } + +} \ No newline at end of file diff --git a/plugins/annotation-collector/testData/collectToFile/nestedClasses/annotations.txt b/plugins/annotation-collector/testData/collectToFile/nestedClasses/annotations.txt index 06d233ba572..1758a1f6214 100644 --- a/plugins/annotation-collector/testData/collectToFile/nestedClasses/annotations.txt +++ b/plugins/annotation-collector/testData/collectToFile/nestedClasses/annotations.txt @@ -5,6 +5,7 @@ a org.jetbrains.annotations.NotNull 1 m 1 0/SomeClass$Companion access$init$0 c 0 0/SomeClass$SomeInnerObject c 0 0/SomeClass$InnerClass +c 0 0/SomeClass$InnerClass$InnerClassInInnerClass c 0 0/SomeClass$NestedClass a java.lang.Deprecated 2 f 2 0/SomeClass OBJECT$ diff --git a/plugins/annotation-collector/testData/collectToFile/nestedClasses/nestedClasses.kt b/plugins/annotation-collector/testData/collectToFile/nestedClasses/nestedClasses.kt index 660c4b8d8a8..7c4178b08fb 100644 --- a/plugins/annotation-collector/testData/collectToFile/nestedClasses/nestedClasses.kt +++ b/plugins/annotation-collector/testData/collectToFile/nestedClasses/nestedClasses.kt @@ -17,6 +17,11 @@ public class SomeClass { Named("InnerClass") inner class InnerClass { + Named("InnerClassInInnerClass") + inner class InnerClassInInnerClass { + + } + } Named("NestedClass") diff --git a/plugins/annotation-collector/testData/collectToFile/platformStatic/annotations.txt b/plugins/annotation-collector/testData/collectToFile/platformStatic/annotations.txt new file mode 100644 index 00000000000..f5dd0bca7a0 --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/platformStatic/annotations.txt @@ -0,0 +1,11 @@ +a kotlin.platform.platformStatic 0 +p org.test 0 +m 0 0/SomeClass$Companion a +a javax.inject.Inject 1 +m 1 0/SomeClass$Companion a +a org.jetbrains.annotations.NotNull 2 +m 2 0/SomeClass$Companion access$init$0 +a java.lang.Deprecated 3 +f 3 0/SomeClass OBJECT$ +m 0 0/SomeClass a +m 1 0/SomeClass a diff --git a/plugins/annotation-collector/testData/collectToFile/platformStatic/platformStatic.kt b/plugins/annotation-collector/testData/collectToFile/platformStatic/platformStatic.kt new file mode 100644 index 00000000000..bb55b63e23c --- /dev/null +++ b/plugins/annotation-collector/testData/collectToFile/platformStatic/platformStatic.kt @@ -0,0 +1,14 @@ +package org.test + +import javax.inject.* +import kotlin.platform.platformStatic + +public class SomeClass { + + companion object { + platformStatic Inject fun a() { + + } + } + +} \ No newline at end of file