@Test public void shouldParseComplexNestedSuites() throws Exception { final TestSuites suites = parser.parse(new File("src/test/resources/" + PhpTestUtils.PHPUNIT_REPORT_DIR + "phpunit-junit-report.xml")); List<TestFileReport> reportsPerFile = suites.arrangeSuitesIntoTestFileReports(); assertThat(reportsPerFile.size()).isEqualTo(8); assertThat(reportsPerFile.get(5).getTests()).isEqualTo(3); assertThat(logTester.logs()).doesNotContain("Test cases must always be descendants of a file-based suite, skipping : testCanBeUsedAsString with data set #0 in App3Test::testCanBeUsedAsString"); }
public TestSuites parse(File report) { try { return processRoot(report, inputFactory()); } catch (XMLStreamException e) { throw new IllegalStateException("Can't read PhpUnit report : " + report.getAbsolutePath(), e); } }
JUnitLogParserForPhpUnit { public TestSuites parse(File report) { try { return processRoot(report, inputFactory()); } catch (XMLStreamException e) { throw new IllegalStateException("Can't read PhpUnit report : " + report.getAbsolutePath(), e); } } }
JUnitLogParserForPhpUnit { public TestSuites parse(File report) { try { return processRoot(report, inputFactory()); } catch (XMLStreamException e) { throw new IllegalStateException("Can't read PhpUnit report : " + report.getAbsolutePath(), e); } }  }
JUnitLogParserForPhpUnit { public TestSuites parse(File report) { try { return processRoot(report, inputFactory()); } catch (XMLStreamException e) { throw new IllegalStateException("Can't read PhpUnit report : " + report.getAbsolutePath(), e); } }  TestSuites parse(File report); static SMInputFactory inputFactory(); }
JUnitLogParserForPhpUnit { public TestSuites parse(File report) { try { return processRoot(report, inputFactory()); } catch (XMLStreamException e) { throw new IllegalStateException("Can't read PhpUnit report : " + report.getAbsolutePath(), e); } }  TestSuites parse(File report); static SMInputFactory inputFactory();  }