Move test code out of "test" package
[nikiroo-utils.git] / src / be / nikiroo / utils / test / TestLauncher.java
index b6118df103ee68711273e30b0ae33d3517883855..9b841a4a79a4da6a775697457b6384744f6fdd53 100644 (file)
@@ -5,8 +5,6 @@ import java.io.StringWriter;
 import java.util.ArrayList;
 import java.util.List;
 
-import be.nikiroo.utils.test.TestCase.AssertException;
-
 /**
  * A {@link TestLauncher} starts a series of {@link TestCase}s and displays the
  * result to the user.
@@ -22,7 +20,7 @@ public class TestLauncher {
        private class SetupException extends Exception {
                private static final long serialVersionUID = 1L;
 
-               public SetupException(Exception e) {
+               public SetupException(Throwable e) {
                        super(e);
                }
        }
@@ -35,7 +33,7 @@ public class TestLauncher {
        private class TearDownException extends Exception {
                private static final long serialVersionUID = 1L;
 
-               public TearDownException(Exception e) {
+               public TearDownException(Throwable e) {
                        super(e);
                }
        }
@@ -187,20 +185,20 @@ public class TestLauncher {
                for (TestCase test : tests) {
                        print(depth, test.getName());
 
-                       Exception ex = null;
+                       Throwable ex = null;
                        try {
                                try {
                                        test.setUp();
-                               } catch (Exception e) {
+                               } catch (Throwable e) {
                                        throw new SetupException(e);
                                }
                                test.test();
                                try {
                                        test.tearDown();
-                               } catch (Exception e) {
+                               } catch (Throwable e) {
                                        throw new TearDownException(e);
                                }
-                       } catch (Exception e) {
+                       } catch (Throwable e) {
                                ex = e;
                        }
 
@@ -280,18 +278,19 @@ public class TestLauncher {
         * 
         * @param depth
         *            the level at which is the launcher (0 = main launcher)
-        * @param test
-        *            the {@link TestCase}
+        * @param name
+        *            the {@link TestCase} name
         */
        protected void print(int depth, String name) {
                name = prefix(depth, false)
                                + (name == null ? "" : name).replace("\t", "    ");
 
-               while (name.length() < columns - 11) {
-                       name += ".";
+               StringBuilder dots = new StringBuilder();
+               while ((name.length() + dots.length()) < columns - 11) {
+                       dots.append('.');
                }
 
-               System.out.print(name);
+               System.out.print(name + dots.toString());
        }
 
        /**
@@ -302,16 +301,13 @@ public class TestLauncher {
         * @param error
         *            the {@link Exception} it ran into if any
         */
-       private void print(int depth, Exception error) {
+       private void print(int depth, Throwable error) {
                if (error != null) {
                        System.out.println(" " + koString);
-                       String lines = error.getMessage() + "";
-                       if (!(error instanceof AssertException)) {
-                               StringWriter sw = new StringWriter();
-                               PrintWriter pw = new PrintWriter(sw);
-                               error.printStackTrace(pw);
-                               lines = sw.toString();
-                       }
+                       StringWriter sw = new StringWriter();
+                       PrintWriter pw = new PrintWriter(sw);
+                       error.printStackTrace(pw);
+                       String lines = sw.toString();
                        for (String line : lines.split("\n")) {
                                System.out.println(prefix(depth, false) + "\t\t" + line);
                        }