Fix test framework to allow Mockito tests to run successfully on ART.

Currently, Mockito tests don't run on ART (KitKat & L) due to an extra
NoClassDefFoundError exception being thrown while trying to resolve
internal test runner classes. These exceptions are benign, Mockito's
internal test runners all inherit from org.junit.runner.Runner, which is
not included in the setup, but none of them are actually used in tests.

The same apks succeed on Dalvik, and logcat shows the same exceptions
 going by, minus the NCDFE's.

Section 5.3 of the VM spec says the virtual machine has to wrap a
ClassNotFoundException in NoClassDefFoundError if the first exception
arises from verification or resolution but not initialization of that
particular class.

Bug: 17042833
Change-Id: I3af20f6884d9fa3afc3fbf9fcb238be10267827a
diff --git a/test-runner/src/android/test/ClassPathPackageInfoSource.java b/test-runner/src/android/test/ClassPathPackageInfoSource.java
index 7b10e38..0ffecdb 100644
--- a/test-runner/src/android/test/ClassPathPackageInfoSource.java
+++ b/test-runner/src/android/test/ClassPathPackageInfoSource.java
@@ -87,7 +87,7 @@
                 // We get errors in the emulator if we don't use the caller's class loader.
                 topLevelClasses.add(Class.forName(className, false,
                         (classLoader != null) ? classLoader : CLASS_LOADER));
-            } catch (ClassNotFoundException e) {
+            } catch (ClassNotFoundException | NoClassDefFoundError e) {
                 // Should not happen unless there is a generated class that is not included in
                 // the .apk.
                 Log.w("ClassPathPackageInfoSource", "Cannot load class. "