aboutsummaryrefslogtreecommitdiff
path: root/nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java
diff options
context:
space:
mode:
Diffstat (limited to 'nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java')
-rw-r--r--nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java b/nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java
index 7af8b25..5e13b02 100644
--- a/nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java
+++ b/nullaway/src/test/java/com/uber/nullaway/NullAwayTypeUseAnnotationsTests.java
@@ -38,16 +38,28 @@ public class NullAwayTypeUseAnnotationsTests extends NullAwayTestsBase {
"import java.util.List;",
"import java.util.ArrayList;",
"import org.checkerframework.checker.nullness.qual.Nullable;",
+ "import org.checkerframework.checker.nullness.qual.NonNull;",
"class TypeArgumentAnnotation {",
" List<@Nullable String> fSafe = new ArrayList<>();",
" @Nullable List<String> fUnsafe = new ArrayList<>();",
" void useParamSafe(List<@Nullable String> list) {",
" list.hashCode();",
" }",
+ " void unsafeCall() {",
+ " // BUG: Diagnostic contains: passing @Nullable parameter",
+ " useParamSafe(null);",
+ " }",
" void useParamUnsafe(@Nullable List<String> list) {",
" // BUG: Diagnostic contains: dereferenced",
" list.hashCode();",
" }",
+ " void useParamUnsafeNonNullElements(@Nullable List<@NonNull String> list) {",
+ " // BUG: Diagnostic contains: dereferenced",
+ " list.hashCode();",
+ " }",
+ " void safeCall() {",
+ " useParamUnsafeNonNullElements(null);",
+ " }",
" void useFieldSafe() {",
" fSafe.hashCode();",
" }",