APT: Add more compiler plugin tests

This commit is contained in:
Yan Zhulanow
2015-05-19 21:56:45 +03:00
parent 594988db51
commit 921017367a
11 changed files with 105 additions and 14 deletions
@@ -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);
}
}
@@ -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
}
@@ -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
@@ -1,10 +1,11 @@
package org.test
import javax.inject.*
public annotation class SomeAnnotation
SomeAnnotation
public class SomeClass {
Inject
SomeAnnotation
public fun annotatedFunction() {
}
@@ -0,0 +1,4 @@
a org.test.SomeAnnotation 0
p org.test 0
c 0 0/SomeClass
m 0 0/SomeClass annotatedFunction
@@ -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
@@ -0,0 +1,15 @@
package org.test
import javax.inject.*
public class SomeClass {
private fun a() {
object : Any() {
[Inject]
val property: Int = 5
}
}
}
@@ -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$
@@ -17,6 +17,11 @@ public class SomeClass {
Named("InnerClass")
inner class InnerClass {
Named("InnerClassInInnerClass")
inner class InnerClassInInnerClass {
}
}
Named("NestedClass")
@@ -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
@@ -0,0 +1,14 @@
package org.test
import javax.inject.*
import kotlin.platform.platformStatic
public class SomeClass {
companion object {
platformStatic Inject fun a() {
}
}
}