/*
 * This file is covered by the terms of the Common Public License v1.0.
 *
 * Copyright (c) SZEDER Gábor
 *
 * Parts of this software were developed within the JEOPARD research
 * project, which received funding from the European Union's Seventh
 * Framework Programme under grant agreement No. 216682.
 */

package de.fzi.cjunit;

import org.junit.runner.Result;
import org.junit.internal.JUnitSystem;
import org.junit.internal.RealSystem;

import de.fzi.cjunit.runner.Request;

public class ConcurrentJUnit extends org.junit.runner.JUnitCore {

	public static void main(String... args) {
		runMainAndExit(new RealSystem(), args);
	}

	public static void runMainAndExit(JUnitSystem system, String... args) {
		Result result= new ConcurrentJUnit().runMain(system, args);
		system.exit(result.wasSuccessful() ? 0 : 1);
	}

	public static Result runClasses(Class<?>... classes) {
		return new ConcurrentJUnit().run(classes);
	}

	@Override
	public Result run(Class<?>... classes) {
		return run(Request.classes(classes));
	}

}

@@ -923,16 +923,249 @@
 s);%0A%09%7D%0A%0A
+%09@Override%0A%09public Result runMain(JUnitSystem system, String... args) %7B%0A%09%09system.out().println(%0A%09%09%09%22cJUnit - a JUnit extension for concurrent unit tests%22);%0A%09%09system.out().print(%22based on %22);%0A%09%09return super.runMain(system, args);%0A%09%7D%0A%0A
 %09@Overri

print "splash" string on startup