[Test] Migrate tests of foreign annotations to new infrastructure

This commit includes:
- test runners for foreign annotation tests
- minor changes testdata related to changed directives syntax
- dropping tests with javac integration: old javac tests actually ran
    compiler without javac because of bug in configuration, so some
    nullability annotations features are not supported in javac mode.
    It's fine to drop it since javac mode is not fully supported
    by compiler
This commit is contained in:
Dmitriy Novozhilov
2020-12-22 16:08:14 +03:00
committed by TeamCityServer
parent ef3d966d53
commit 660c438ebe
176 changed files with 2451 additions and 2970 deletions
@@ -28,7 +28,7 @@ public class A<T> {
fun main(a: A<String>, a1: A<String?>) {
a.foo("", null)?.length
<!RECEIVER_NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS("String?")!>a.foo("", null)<!>.length
<!RECEIVER_NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>a.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS("String", "Nothing?")!>null<!>, "")<!>.length
<!RECEIVER_NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>a.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS("String; Nothing?")!>null<!>, "")<!>.length
a.bar().length
a.bar()<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>.length
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT ignore
// JSR305_GLOBAL_REPORT: ignore
// FILE: A.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: MyNotNull.java
import javax.annotation.Nonnull;
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -23,4 +23,4 @@ fun test() {
n = J.staticNN
n = J.staticN
n = J.staticJ
}
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_EXPRESSION
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -28,4 +28,4 @@ fun test() {
}
}
fun foo(j: J) {}
fun foo(j: J) {}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -21,4 +21,4 @@ fun test() {
fun foo(p: J = platformNN, p1: J = <!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>platformN<!>, p2: J = platformJ) {}
fun foo1(p: J? = platformNN, p1: J? = platformN, p2: J? = platformJ) {}
}
}
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FULL_JDK
// FILE: J.java
@@ -16,4 +16,4 @@ public class J {
class A : List<String> by J.staticNN
class B : List<String> by <!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>J.staticN<!>
class C : List<String> by J.staticJ
class C : List<String> by J.staticJ
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !CHECK_TYPE
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -24,4 +24,4 @@ fun test() {
}
fun foo(j: J) {}
fun bar(j: J?) {}
fun bar(j: J?) {}
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// KT-6829 False warning on map to @Nullable
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -87,4 +87,4 @@ fun test(n: J?, nn: J) {
J(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>n<!>, n, n)
J(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>platformN<!>, platformN, platformN)
J(platformJ, platformJ, platformJ)
}
}
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,4 +1,4 @@
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -22,4 +22,4 @@ fun test1() {
fun test2() {
throw J.staticJ
}
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: J.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_EXPRESSION
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: MyNotNull.java
import javax.annotation.Nonnull;
@@ -93,4 +93,4 @@ fun ifChecksAndSmartCasts() {
// Platform
val r5 = if (e == null) 42 else e.length
val r6 = if (f == null) 42 else <!DEBUG_INFO_SMARTCAST!>f<!>.length
}
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: A.java
public class A<T> {
@@ -38,4 +38,4 @@ fun test() {
a.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
val b: String = <!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>a.bar()<!>
}
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: MyNullable.java
import javax.annotation.*;
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: MyNotNull.java
import javax.annotation.Nonnull;
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: A.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: A.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: spr/NonNullApi.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: FieldsAreNullable.java
import java.lang.annotation.Documented;
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: NonNullApi.java
@@ -156,4 +156,4 @@ fun main(a: A, b: B, c: C) {
c.bar1(null)?.length
c.bar2(null)<!UNSAFE_CALL!>.<!>length
c.baz(<!NULL_FOR_NONNULL_TYPE!>null<!>).length
}
}
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: NonNullApi.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: A.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: test/package-info.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: spr/Nullable.java
@@ -69,7 +69,7 @@ public class A {
fun main(a: A) {
a.foo("", null)<!UNNECESSARY_SAFE_CALL!>?.<!>length
a.foo("", null).length
a.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS("String", "Nothing?")!>null<!>, "").length
a.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS("String; Nothing?")!>null<!>, "").length
a.bar().length
a.bar()<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>.length
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: spr/Nullable.java
@@ -1,6 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// RENDER_PACKAGE: test
// RENDER_PACKAGE: test2
// RENDER_PACKAGE: test, test2
// FILE: test/package-info.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT ignore
// JSR305_GLOBAL_REPORT: ignore
// FILE: MyErrorNonnull.java
import javax.annotation.*;
@@ -81,4 +81,4 @@ fun main(a: A) {
a.foo4("")
a.foo4(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
}
}
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT ignore
// JSR305_MIGRATION_REPORT strict
// JSR305_SPECIAL_REPORT MyNonnull:warn
// JSR305_GLOBAL_REPORT: ignore
// JSR305_MIGRATION_REPORT: strict
// JSR305_SPECIAL_REPORT: MyNonnull:warn
// FILE: A.java
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_MIGRATION_REPORT ignore
// JSR305_SPECIAL_REPORT MyNullable:strict, MyMigrationNonnull:strict
// JSR305_GLOBAL_REPORT: warn
// JSR305_MIGRATION_REPORT: ignore
// JSR305_SPECIAL_REPORT: MyNullable:strict, MyMigrationNonnull:strict
// FILE: A.java
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_MIGRATION_REPORT strict
// JSR305_SPECIAL_REPORT MyNonnull:ignore, MySuperNull:strict
// JSR305_GLOBAL_REPORT: warn
// JSR305_MIGRATION_REPORT: strict
// JSR305_SPECIAL_REPORT: MyNonnull:ignore, MySuperNull:strict
// FILE: MySuperNull.java
import javax.annotation.*;
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT strict
// JSR305_MIGRATION_REPORT ignore
// JSR305_SPECIAL_REPORT MyNullable:warn, MyMigrationNonnull:strict
// JSR305_GLOBAL_REPORT: strict
// JSR305_MIGRATION_REPORT: ignore
// JSR305_SPECIAL_REPORT: MyNullable:warn, MyMigrationNonnull:strict
// FILE: A.java
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT strict
// JSR305_MIGRATION_REPORT warn
// JSR305_SPECIAL_REPORT MyNullable:ignore, MyMigrationNullable:strict
// JSR305_GLOBAL_REPORT: strict
// JSR305_MIGRATION_REPORT: warn
// JSR305_SPECIAL_REPORT: MyNullable:ignore, MyMigrationNullable:strict
// FILE: A.java
@@ -1,6 +1,6 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_MIGRATION_REPORT strict
// JSR305_GLOBAL_REPORT: warn
// JSR305_MIGRATION_REPORT: strict
// FILE: A.java
import javax.annotation.Nullable;
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT ignore
// JSR305_MIGRATION_REPORT ignore
// JSR305_SPECIAL_REPORT MyNonnull:warn, MyMigrationNonnull:strict
// JSR305_GLOBAL_REPORT: ignore
// JSR305_MIGRATION_REPORT: ignore
// JSR305_SPECIAL_REPORT: MyNonnull:warn, MyMigrationNonnull:strict
// FILE: A.java
@@ -1,7 +1,7 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT ignore
// JSR305_MIGRATION_REPORT warn
// JSR305_SPECIAL_REPORT MyNonnull:strict
// JSR305_GLOBAL_REPORT: ignore
// JSR305_MIGRATION_REPORT: warn
// JSR305_SPECIAL_REPORT: MyNonnull:strict
// FILE: A.java
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// JSR305_GLOBAL_REPORT warn
// JSR305_GLOBAL_REPORT: warn
// FILE: NonNullApi.java
@@ -66,4 +66,4 @@ fun main(default: PolicyFromDefault, nickname: PolicyFromNickname) {
nickname.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>).length
nickname.foo("hello").length
}
}