private Description getRootDescription(Runner runner, DescriptionMatcher matcher) {
   Description current = runner.getDescription();
   while (true) {
     List<Description> children = current.getChildren();
     if (children.size() != 1 || matcher.matches(current)) return current;
     current = children.get(0);
   }
 }
 private ITestReference createFilteredTest(
     Class<?> clazz, String testName, String[] failureNames) {
   DescriptionMatcher matcher = DescriptionMatcher.create(clazz, testName);
   SubForestFilter filter = new SubForestFilter(matcher);
   Request request =
       sortByFailures(Request.classWithoutSuiteMethod(clazz).filterWith(filter), failureNames);
   Runner runner = request.getRunner();
   Description description = getRootDescription(runner, matcher);
   return new JUnit4TestReference(runner, description);
 }