}
@Override
public void stream(SMHierarchicCursor rootCursor) throws XMLStreamException {
SMInputCursor testSuite = rootCursor.constructDescendantCursor(new ElementFilter("testsuite"));
SMEvent testSuiteEvent;
for (testSuiteEvent = testSuite.getNext(); testSuiteEvent != null; testSuiteEvent = testSuite.getNext()) {
if (testSuiteEvent.compareTo(SMEvent.START_ELEMENT) == 0) {
String testSuiteClassName = testSuite.getAttrValue("name");
if (StringUtils.contains(testSuiteClassName, "$")) {
// test suites for inner classes are ignored
return;
}
SMInputCursor testCase = testSuite.childCursor(new ElementFilter("testcase"));
SMEvent event;
for (event = testCase.getNext(); event != null; event = testCase.getNext()) {
if (event.compareTo(SMEvent.START_ELEMENT) == 0) {
String testClassName = getClassname(testCase, testSuiteClassName);
UnitTestClassReport classReport = index.index(testClassName);
parseTestCase(testCase, classReport);
}
}