Update ParentRunner to not use ImmutableDescription
diff --git a/src/main/java/org/junit/runners/ParentRunner.java b/src/main/java/org/junit/runners/ParentRunner.java
index 01854de..d058085 100755
--- a/src/main/java/org/junit/runners/ParentRunner.java
+++ b/src/main/java/org/junit/runners/ParentRunner.java
@@ -25,8 +25,6 @@
 import org.junit.rules.RunRules;
 import org.junit.rules.TestRule;
 import org.junit.runner.Description;
-import org.junit.runner.DescriptionBuilder;
-import org.junit.runner.ImmutableDescription;
 import org.junit.runner.Runner;
 import org.junit.runner.manipulation.Filter;
 import org.junit.runner.manipulation.Filterable;
@@ -349,28 +347,20 @@
 
     @Override
     public Description getDescription() {
-        List<ImmutableDescription> childDescriptions = new ArrayList<ImmutableDescription>();
-        for (T child : getFilteredChildren()) {
-            childDescriptions.add(describeChild(child).toImmutableDescription());
-        }
-
+        Class<?> clazz = getTestClass().getJavaClass();
+        Description description;
         // if subclass overrides `getName()` then we should use it
         // to maintain backwards compatibility with JUnit 4.12
-        String displayName = getName();
-        Class<?> clazz = getTestClass().getJavaClass();
-        if (clazz == null || !clazz.getName().equals(displayName)) {
-            clazz = Description.createSuiteDescription(displayName).getTestClass();
+        if (clazz == null || !clazz.getName().equals(getName())) {
+            description = Description.createSuiteDescription(getName(), getRunnerAnnotations());
+        } else {
+            description = Description.createSuiteDescription(clazz, getRunnerAnnotations());
         }
-        if (clazz != null) {
-            return DescriptionBuilder.forClass(clazz)
-                    .withDisplayName(displayName)
-                    .withUniqueId(displayName)
-                    .withAdditionalAnnotations(Arrays.asList(getRunnerAnnotations()))
-                    .createSuiteDescription(childDescriptions);
+
+        for (T child : getFilteredChildren()) {
+            description.addChild(describeChild(child));
         }
-        return DescriptionBuilder.forName(displayName)
-                .withAdditionalAnnotations(Arrays.asList(getRunnerAnnotations()))
-                .createSuiteDescription(childDescriptions);
+        return description;
     }
 
     @Override