1 package org.simantics.tests.modelled.junit;
\r
3 import java.util.List;
\r
5 import org.junit.runner.Description;
\r
6 import org.junit.runner.Result;
\r
7 import org.junit.runner.Runner;
\r
8 import org.junit.runner.notification.Failure;
\r
9 import org.junit.runner.notification.RunListener;
\r
10 import org.junit.runner.notification.RunNotifier;
\r
11 import org.junit.runners.ParentRunner;
\r
13 public abstract class RuntimeSTSRunner extends ParentRunner<Runner> {
\r
15 public RuntimeSTSRunner(Class<?> testClass) throws Exception {
\r
19 public abstract void initialize() throws Exception;
\r
21 public abstract void deinitialize() throws Exception;
\r
24 protected List<Runner> getChildren() {
\r
25 System.out.println("getting children");
\r
26 return RuntimeTestCollector.collectTests();
\r
30 protected Description describeChild(Runner child) {
\r
31 return child.getDescription();
\r
35 public void run(RunNotifier notifier) {
\r
36 notifier.addListener(new RunListener() {
\r
39 public void testRunFinished(Result result) throws Exception {
\r
43 super.run(notifier);
\r
47 protected void runChild(Runner child, RunNotifier notifier) {
\r
48 Description desc = describeChild(child);
\r
49 notifier.fireTestStarted(desc);
\r
51 child.run(notifier);
\r
52 notifier.fireTestFinished(desc);
\r
53 } catch (Throwable e) {
\r
54 notifier.fireTestFailure(new Failure(desc, e));
\r