diff --git a/nullaway/src/main/java/com/uber/nullaway/handlers/LibraryModelsHandler.java b/nullaway/src/main/java/com/uber/nullaway/handlers/LibraryModelsHandler.java index 0b9def85c9..b33f105d50 100644 --- a/nullaway/src/main/java/com/uber/nullaway/handlers/LibraryModelsHandler.java +++ b/nullaway/src/main/java/com/uber/nullaway/handlers/LibraryModelsHandler.java @@ -196,6 +196,7 @@ private static class DefaultLibraryModels implements LibraryModels { new ImmutableSetMultimap.Builder() .put(methodRef("com.google.common.base.Preconditions", "checkNotNull(T)"), 0) .put(methodRef("java.util.Objects", "requireNonNull(T)"), 0) + .put(methodRef("java.util.Objects", "requireNonNull(T,java.lang.String)"), 0) .put(methodRef("org.junit.Assert", "assertNotNull(java.lang.Object)"), 0) .put( methodRef("org.junit.Assert", "assertNotNull(java.lang.String,java.lang.Object)"), @@ -206,12 +207,12 @@ private static class DefaultLibraryModels implements LibraryModels { methodRef( "org.junit.jupiter.api.Assertions", "assertNotNull(java.lang.Object,java.lang.String)"), - 1) + 0) .put( methodRef( "org.junit.jupiter.api.Assertions", - "assertNotNull(java.lang.Object,java.util.function.Supplier)"), - 1) + "assertNotNull(java.lang.Object,java.util.function.Supplier)"), + 0) .build(); private static final ImmutableSetMultimap EXPLICITLY_NULLABLE_PARAMETERS = diff --git a/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNativeModels.java b/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNativeModels.java index 634135d966..a728fe06b5 100644 --- a/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNativeModels.java +++ b/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNativeModels.java @@ -201,17 +201,22 @@ static void immutableMapStuff() { } } - static void failIfNull(@Nullable Object o1, @Nullable Object o2) { + static void failIfNull( + @Nullable Object o1, + @Nullable Object o2, + @Nullable Object o3, + @Nullable Object o4, + @Nullable Object o5) { org.junit.Assert.assertNotNull(o1); o1.toString(); org.junit.Assert.assertNotNull("Null!", o2); o2.toString(); - org.junit.jupiter.api.Assertions.assertNotNull(o1); - o1.toString(); - org.junit.jupiter.api.Assertions.assertNotNull(o2, "Null!"); - o2.toString(); - org.junit.jupiter.api.Assertions.assertNotNull(o2, () -> "Null!"); - o2.toString(); + org.junit.jupiter.api.Assertions.assertNotNull(o3); + o3.toString(); + org.junit.jupiter.api.Assertions.assertNotNull(o4, "Null!"); + o4.toString(); + org.junit.jupiter.api.Assertions.assertNotNull(o5, () -> "Null!"); + o5.toString(); } static void nonNullParameters() { diff --git a/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNegativeCases.java b/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNegativeCases.java index bfddd423af..14882da38a 100644 --- a/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNegativeCases.java +++ b/nullaway/src/test/resources/com/uber/nullaway/testdata/NullAwayNegativeCases.java @@ -524,9 +524,11 @@ static void checkNotNull(@Nullable Object o) { o.toString(); } - static void requireNonNull(@Nullable Object o) { + static void requireNonNull(@Nullable Object o, @Nullable Object p) { Objects.requireNonNull(o); o.toString(); + Objects.requireNonNull(p, "should be non null"); + p.toString(); } static void isEmpty(@Nullable String s) {