package jetbrains.mps.baseLanguage.unitTest.execution.server; /*Generated by MPS */ import org.junit.runner.Request; import org.junit.runner.notification.RunNotifier; import org.junit.runner.Description; import org.junit.runner.notification.Failure; public class IgnoringStoppableRunner extends StoppableRunner { private final Filter myIgnoringFilter; public IgnoringStoppableRunner(Request request, boolean stopping, Filter ignoringFilter) { super(request, stopping); myIgnoringFilter = ignoringFilter; } @Override protected void doRun(RunNotifier notifier) { try { myIgnoringFilter.accept(myRequest); myRequest.getRunner().run(notifier); } catch (Filter.FilterException e) { ignoreRequest(notifier, e); } } private void ignoreRequest(RunNotifier notifier, Exception e) { Description description = getDescription(); notifier.fireTestStarted(description); notifier.fireTestAssumptionFailed(new Failure(description, e)); notifier.fireTestFinished(description); } }