### Question:
Assert { public static void assertNotNull(Object object) { if (imp != null && object == null) { imp.assertFailed("Not-null expected"); } }  static void assertTrue(boolean condition); static void assertTrue(boolean condition, String message); static void assertTrue(boolean condition, String format, Object... args); static void assertFalse(boolean condition); static void assertFalse(boolean condition, String message); static void assertFalse(boolean condition, String format, Object... args); static T notNull(T reference); static void assertNotNull(Object object); static void assertNotNull(Object object, String message); static void assertNotNull(Object object, String format, Object... args); static void assertNull(Object object); static void assertNull(Object object, String message); static void assertNull(Object object, String format, Object... args); static void assertEquals(Object expected, Object actual); static void assertNotEquals(Object first, Object second); static void assertDispatchQueue(@NonNull DispatchQueue queue); static void assertMainThread(); static void assertBackgroundThread(); static void assertFail(String format, Object... args); static void assertFail(String message); static void setImp(AssertImp imp);  }### Answer:
@Test public void testAssertNotNull() throws Exception { AssertEx.assertNotNull(new Object()); AssertEx.assertNotNull(null); AssertEx.assertNotNull(new Object(), ""); AssertEx.assertNotNull(null, "assertNotNull(Object,String)"); AssertEx.assertNotNull(new Object(), "", new Object()); AssertEx.assertNotNull(null, "assertNotNull(Object,String,Object...)"); assertResult( "Not-null expected", "assertNotNull(Object,String)", "assertNotNull(Object,String,Object...)" ); }