package fitnesse.responders.run; import java.io.IOException; import java.io.Writer; import java.util.List; import fitnesse.FitNesseContext; import fitnesse.reporting.BaseFormatter; import fitnesse.reporting.history.TestXmlFormatter; import fitnesse.testrunner.MultipleTestsRunner; import fitnesse.testsystems.TestSummary; import fitnesse.wiki.WikiPage; import static fitnesse.wiki.WikiPageUtil.isTestPage; import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; public class TestResponder extends SuiteResponder { @Override protected List<WikiPage> getPagesToRun() { if (isTestPage(page)) { return singletonList(page); } else { return emptyList(); } } @Override protected void addHistoryFormatter(MultipleTestsRunner runner) { HistoryWriterFactory source = new HistoryWriterFactory(); TestXmlFormatter testXmlFormatter = new TestXmlFormatter(context, page, source); runner.addTestSystemListener(testXmlFormatter); runner.addExecutionLogListener(testXmlFormatter); } @Override protected BaseFormatter newXmlFormatter() { return new TestXmlFormatter(context, page, new TestXmlFormatter.WriterFactory() { @Override public Writer getWriter(FitNesseContext context, WikiPage page, TestSummary counts, long time) throws IOException { return response.getWriter(); } }); } }