X-Git-Url: http://git.nikiroo.be/?p=fanfix.git;a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Ftest%2FTestLauncher.java;h=895b565ae0f607522e494d92c8bc87541c672f51;hp=9b841a4a79a4da6a775697457b6384744f6fdd53;hb=d2219aa05bbcc5603e90aa69220fecb4a6a41f55;hpb=d251f3dd38a8f9d369a7cf627185eacc4f66ece5 diff --git a/src/be/nikiroo/utils/test/TestLauncher.java b/src/be/nikiroo/utils/test/TestLauncher.java index 9b841a4..895b565 100644 --- a/src/be/nikiroo/utils/test/TestLauncher.java +++ b/src/be/nikiroo/utils/test/TestLauncher.java @@ -40,6 +40,8 @@ public class TestLauncher { private List series; private List tests; + private TestLauncher parent; + private int columns; private String okString; private String koString; @@ -50,6 +52,7 @@ public class TestLauncher { protected int total; private int currentSeries = 0; + private boolean details = false; /** * Create a new {@link TestLauncher} with default parameters. @@ -90,6 +93,33 @@ public class TestLauncher { cont = true; } + /** + * Display the details of the errors + * + * @return TRUE to display them, false to simply mark the test as failed + */ + public boolean isDetails() { + if (parent != null) { + return parent.isDetails(); + } + + return details; + } + + /** + * Display the details of the errors + * + * @param details + * TRUE to display them, false to simply mark the test as failed + */ + public void setDetails(boolean details) { + if (parent != null) { + parent.setDetails(details); + } + + this.details = details; + } + /** * Called before actually starting the tests themselves. * @@ -114,6 +144,7 @@ public class TestLauncher { protected void addSeries(TestLauncher series) { this.series.add(series); + series.parent = this; } /** @@ -304,12 +335,14 @@ public class TestLauncher { private void print(int depth, Throwable error) { if (error != null) { System.out.println(" " + koString); - 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); + if (isDetails()) { + 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); + } } } else { System.out.println(" " + okString);