Update Server, breaks API + remove deprecated
[nikiroo-utils.git] / src / be / nikiroo / utils / test / TestCase.java
index e4860fa11f51e0f5e4cda5d366fffa8db0eef285..9d0caaa9026ea16530360f57966ccaab584f6b45 100644 (file)
@@ -15,6 +15,10 @@ abstract public class TestCase {
        class AssertException extends Exception {
                private static final long serialVersionUID = 1L;
 
+               public AssertException(String reason, Exception source) {
+                       super(reason, source);
+               }
+
                public AssertException(String reason) {
                        super(reason);
                }
@@ -38,6 +42,7 @@ abstract public class TestCase {
         * @throws Exception
         *             in case of error
         */
+       @SuppressWarnings("unused")
        public void setUp() throws Exception {
        }
 
@@ -47,6 +52,7 @@ abstract public class TestCase {
         * @throws Exception
         *             in case of error
         */
+       @SuppressWarnings("unused")
        public void tearDown() throws Exception {
        }
 
@@ -109,8 +115,8 @@ abstract public class TestCase {
        /**
         * Check that 2 {@link Object}s are equals.
         * 
-        * @param the
-        *            error message to display if they differ
+        * @param errorMessage
+        *            the error message to display if they differ
         * @param expected
         *            the expected value
         * @param actual
@@ -121,14 +127,15 @@ abstract public class TestCase {
         */
        public void assertEquals(String errorMessage, Object expected, Object actual)
                        throws AssertException {
-
-               if (errorMessage == null) {
-                       errorMessage = generateAssertMessage(expected, actual);
-               }
-
                if ((expected == null && actual != null)
                                || (expected != null && !expected.equals(actual))) {
-                       throw new AssertException(errorMessage);
+                       if (errorMessage == null) {
+                               throw new AssertException(generateAssertMessage(expected,
+                                               actual));
+                       }
+
+                       throw new AssertException(errorMessage, new AssertException(
+                                       generateAssertMessage(expected, actual)));
                }
        }
 
@@ -150,8 +157,8 @@ abstract public class TestCase {
        /**
         * Check that 2 {@link Object}s are equals.
         * 
-        * @param the
-        *            error message to display if they differ
+        * @param errorMessage
+        *            the error message to display if they differ
         * @param expected
         *            the expected value
         * @param actual
@@ -184,8 +191,8 @@ abstract public class TestCase {
        /**
         * Check that 2 {@link Object}s are equals.
         * 
-        * @param the
-        *            error message to display if they differ
+        * @param errorMessage
+        *            the error message to display if they differ
         * @param expected
         *            the expected value
         * @param actual
@@ -218,8 +225,8 @@ abstract public class TestCase {
        /**
         * Check that 2 {@link Object}s are equals.
         * 
-        * @param the
-        *            error message to display if they differ
+        * @param errorMessage
+        *            the error message to display if they differ
         * @param expected
         *            the expected value
         * @param actual
@@ -233,6 +240,33 @@ abstract public class TestCase {
                assertEquals(errorMessage, new Double(expected), new Double(actual));
        }
 
+       /**
+        * Check that given {@link Object} is not NULL.
+        * 
+        * @param errorMessage
+        *            the error message to display if it is NULL
+        * @param actual
+        *            the actual value
+        * 
+        * @throws AssertException
+        *             in case they differ
+        */
+       public void assertNotNull(String errorMessage, Object actual)
+                       throws AssertException {
+               if (actual == null) {
+                       String defaultReason = String.format("" //
+                                       + "Assertion failed!\n" //
+                                       + "Object should have been NULL: [%s]", actual);
+
+                       if (errorMessage == null) {
+                               throw new AssertException(defaultReason);
+                       }
+
+                       throw new AssertException(errorMessage, new AssertException(
+                                       defaultReason));
+               }
+       }
+
        /**
         * Generate the default assert message for 2 different values that were
         * supposed to be equals.