6889858: Add nonNull methods to java.util.Objects
Reviewed-by: darcy
Contributed-by: jjb@google.com
diff --git a/test/java/util/Objects/BasicObjectsTest.java b/test/java/util/Objects/BasicObjectsTest.java
index be45b2c..f5c45f7 100644
--- a/test/java/util/Objects/BasicObjectsTest.java
+++ b/test/java/util/Objects/BasicObjectsTest.java
@@ -37,6 +37,7 @@
errors += testHashCode();
errors += testToString();
errors += testCompare();
+ errors += testNonNull();
if (errors > 0 )
throw new RuntimeException();
}
@@ -102,4 +103,53 @@
}
return errors;
}
+
+ private static int testNonNull() {
+ int errors = 0;
+ String s;
+
+ // Test 1-arg variant
+ try {
+ s = Objects.nonNull("pants");
+ if (s != "pants") {
+ System.err.printf("1-arg non-null failed to return its arg");
+ errors++;
+ }
+ } catch (NullPointerException e) {
+ System.err.printf("1-arg nonNull threw unexpected NPE");
+ errors++;
+ }
+
+ try {
+ s = Objects.nonNull(null);
+ System.err.printf("1-arg nonNull failed to throw NPE");
+ errors++;
+ } catch (NullPointerException e) {
+ // Expected
+ }
+
+ // Test 2-arg variant
+ try {
+ s = Objects.nonNull("pants", "trousers");
+ if (s != "pants") {
+ System.err.printf("2-arg nonNull failed to return its arg");
+ errors++;
+ }
+ } catch (NullPointerException e) {
+ System.err.printf("2-arg nonNull threw unexpected NPE");
+ errors++;
+ }
+
+ try {
+ s = Objects.nonNull(null, "pantaloons");
+ System.err.printf("2-arg nonNull failed to throw NPE");
+ errors++;
+ } catch (NullPointerException e) {
+ if (e.getMessage() != "pantaloons") {
+ System.err.printf("2-arg nonNull threw NPE w/ bad detail msg");
+ errors++;
+ }
+ }
+ return errors;
+ }
}