in old/fine-junit/src/main/java/org/jetbrains/dekaf/junitft/TestSuiteExecutor.java [24:57]
public static void run(final Class... suites) {
boolean underTC = System.getenv(TEAMCITY_DETECT_VAR_NAME) != null;
// prepare junit
JUnitSystem system = new RealSystem();
JUnitCore core = new JUnitCore();
RunListener listener = underTC ? new TeamCityListener() : new TextListener(system);
core.addListener(listener);
int success = 0,
failures = 0,
ignores = 0;
// run tests
for (Class suite : suites) {
sayNothing();
String suiteName = suite.getSimpleName();
if (suiteName.endsWith("Tests")) suiteName = suiteName.substring(0, suiteName.length()-"Tests".length());
if (suiteName.endsWith("Integration")) suiteName = suiteName.substring(0, suiteName.length()-"Integration".length());
if (suiteParameter != null) suiteName = suiteName + '[' + suiteParameter + ']';
if (underTC) say("##teamcity[testSuiteStarted name='%s']", suiteName);
Result result = core.run(suite);
success += result.getRunCount() - (result.getFailureCount() + result.getIgnoreCount());
failures += result.getFailureCount();
ignores += result.getIgnoreCount();
if (underTC) say("##teamcity[testSuiteFinished name='%s']", suiteName);
sayNothing();
}
}