in java/src/org/apache/qetest/xsl/XSLTestHarness.java [594:676]
public void doMain(String args[])
{
// Must have at least one arg to continue
if ((args == null) || (args.length == 0))
{
System.err.println("ERROR in usage: must have at least one argument");
System.err.println(usage());
return;
}
// Initialize ourselves and a list of tests to execute
// Side effects: sets harnessProps, debug
String tests[] = doTestHarnessInit(args);
if (tests == null)
{
System.err.println("ERROR in usage: Problem during initialization - no tests!");
System.err.println(usage());
return;
}
// Use a separate copy of our properties to init our Reporter
Properties reporterProps = (Properties)harnessProps.clone();
// Ensure we have an XMLFileLogger if we have a logName
String logF = reporterProps.getProperty(Logger.OPT_LOGFILE);
if ((logF != null) && (!logF.equals("")))
{
// We should ensure there's an XMLFileReporter
String r = reporterProps.getProperty(Reporter.OPT_LOGGERS);
if (r == null)
{
reporterProps.put(Reporter.OPT_LOGGERS,
"org.apache.qetest.XMLFileLogger");
}
else if (r.indexOf("XMLFileLogger") <= 0)
{
reporterProps.put(Reporter.OPT_LOGGERS,
r + Reporter.LOGGER_SEPARATOR
+ "org.apache.qetest.XMLFileLogger");
}
}
// Ensure we have a ConsoleLogger unless asked not to
// @todo improve and document this feature
String noDefault = reporterProps.getProperty("noDefaultReporter");
if (noDefault == null)
{
// We should ensure there's an XMLFileReporter
String r = reporterProps.getProperty(Reporter.OPT_LOGGERS);
if (r == null)
{
reporterProps.put(Reporter.OPT_LOGGERS,
"org.apache.qetest.ConsoleLogger");
}
else if (r.indexOf("ConsoleLogger") <= 0)
{
reporterProps.put(Reporter.OPT_LOGGERS,
r + Reporter.LOGGER_SEPARATOR
+ "org.apache.qetest.ConsoleLogger");
}
}
// A Reporter will auto-initialize from the values
// in the properties block
reporter = new Reporter(reporterProps);
reporter.addDefaultLogger(); // add default logger if needed
// Call worker method to actually run all the tests
// Worker method manages all it's own reporting, including
// calling testFileInit/testFileClose
boolean notUsed = runHarness(tests);
// Tell user if a logFile should have been saved
String logFile = reporterProps.getProperty(Logger.OPT_LOGFILE);
if (logFile != null)
{
System.out.println("");
System.out.println("Hey! A summary-harness logFile was written to: " + logFile);
}
}