### Question:
Utils { public static <T> T notNull(T object, String message, Object... values) { if (object == null) { throw new IllegalArgumentException(String.format(message, values)); } return object; } private  Utils(); static String join(String delimiter, String wrap, Iterable<?> objs); static String join(String delimiter, Iterable<?> objs); static String concat(CharSequence... strings); static void closeQuietly(Closeable closeable); static String escape(String str, boolean escapeSingleQuote); static String unescape(String str); static String hex(char ch); static boolean isEmpty(CharSequence cs); static T notNull(T object, String message, Object... values); static void isTrue(boolean expression, String message); static void onlyOneIsTrue(final String message, final boolean... expressions); static boolean onlyOneIsTrueNonThrow(final boolean... expressions); static T notEmpty(T chars, String message, Object... values); static String toString(Object o);  }### Answer:
@Test public void testNotNull() { Assert.assertEquals("", Utils.notNull("", "bar", "a", "b", "c")); Assert.assertEquals("foo", Utils.notNull("foo", "bar", "a", "b", "c")); }
@Test public void testNotNullThrow() { thrown.expect(IllegalArgumentException.class); Utils.notNull(null, "bar", "a", "b", "c"); }