blob: c4b1b365f44669727bb5ba2f15c14b2fd763ce95 [file] [log] [blame]
/*
* Copyright 2020 Google LLC
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// TEST PROCESSOR: LibOriginsProcessor
// EXPECTED:
// Validating Anno1
// Validating Anno2
// Validating Anno3
// Validating Anno4
// Validating Anno5
// Validating JavaLib
// Validating KotlinLibClass
// Validating kotlinLibFuntion
// Validating kotlinLibProperty
// Validating File: JavaSrc.java
// Exception: [File: JavaSrc.java, JavaSrc, synthetic constructor for JavaSrc, JavaSrc]: SYNTHETIC
// Exception: [File: JavaSrc.java, JavaSrc, synthetic constructor for JavaSrc]: SYNTHETIC
// Exception: [File: JavaSrc.java, JavaAnno1, synthetic constructor for JavaAnno1, JavaAnno1]: SYNTHETIC
// Exception: [File: JavaSrc.java, JavaAnno1, synthetic constructor for JavaAnno1]: SYNTHETIC
// Validating File: KotlinSrc.kt
// Exception: [File: KotlinSrc.kt, kotlinSrcProperty, kotlinSrcProperty.getter(), Short, Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, kotlinSrcProperty, kotlinSrcProperty.getter(), Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, kotlinSrcProperty, kotlinSrcProperty.getter()]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, Any]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, T3, Any?]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>, Set<T3>, INVARIANT T3, T3, KotlinSrcClass]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>, Set<T3>, INVARIANT T3, T3, T3]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>, Set<T3>, INVARIANT T3, T3]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>, Set<T3>, INVARIANT T3]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>, Set<T3>]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter(), Set<T3>]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q1, q1.getter()]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q2, q2.getter(), Short, Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q2, q2.getter(), Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, <init>, q2, q2.getter()]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, q3, q3.getter(), Short, Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, q3, q3.getter(), Short]: SYNTHETIC
// Exception: [File: KotlinSrc.kt, KotlinSrcClass, q3, q3.getter()]: SYNTHETIC
// END
// MODULE: module1
// FILE: KotlinLib.kt
package foo.bar
val kotlinLibProperty: Int = 0
fun kotlinLibFuntion(): Int = 0
annotation class Anno1
annotation class Anno2
annotation class Anno3
annotation class Anno4
annotation class Anno5(val p1: Int = 42, val p2: String = "default")
@Anno1
class KotlinLibClass<T1>(val p1: List<T1>, val p2: Int) {
val p3: Int = 0
fun f1(p4: T1): Int = 0
fun f2(p5: List<T1>): Int = 0
fun f3(p6: List<Int>): Int = 0
}
// FILE: JavaLib.java
package foo.bar;
import java.util.ArrayList;
@Anno2
class JavaLib<T2> {
Byte javaLibField = 0;
Byte javaLibFunction() {
return 0;
}
Byte f1(T2 p0, ArrayList<T2> p1) {
return 0;
}
}
// MODULE: main(module1)
// FILE: KotlinSrc.kt
package foo.bar
val kotlinSrcProperty: Short = 0
fun kotlinSrcFuntion(): Short = 0
@Anno3
class KotlinSrcClass<T3>(val q1: Set<T3>, val q2: Short) {
val q3: Short = 0
fun g1(q4: T3): Short = 0
fun g2(q5: Set<T3>): Short = 0
fun g3(q6: Set<Short>): Short = 0
}
// FILE: JavaSrc.java
package foo.bar;
import java.util.LinkedList;
@Anno4
class JavaSrc {
Long javaSrcField = 0;
Long javaSrcFunction() {
return 0;
}
Long f2<T4>(T4 p0, LinkedList<T4> p1) {
return 0;
}
}
public @interface JavaAnno1 {
@Anno5(p1 = 1, p2 = "a2")
String value ();
}