@Override public Runner runnerForClass(Class<?> testClass) throws Throwable { Runner runner = super.runnerForClass(testClass); if (testClass.getAnnotation(Ignore.class) != null) { if (runner == null) { return new IgnoredClassRunner(testClass); } return decorateIgnoredTestClass(runner); } return runner; }
@Override public Runner runnerForClass(Class<?> testClass) throws Throwable { if (enclosing.equals(testClass)) return new AllDefaultPossibilitiesExceptAnnotationRunnerBuilder(true).runnerForClass(testClass); if (isStatic(testClass.getModifiers())) return new AllDefaultPossibilitiesBuilder(true).runnerForClass(testClass); return new BlockJUnit4InnerClassRunner(enclosing, testClass); }
private static Class<? extends Runner> getRunWithRunner(Class<?> clazz, boolean useSuite) { RunWith runWithAnnotation = clazz.getAnnotation(RunWith.class); if (runWithAnnotation == null) { AllDefaultPossibilitiesBuilder builder = new AllDefaultPossibilitiesBuilder( useSuite); try { return builder.runnerForClass(clazz).getClass(); } catch (Throwable e) { throw new RuntimeException(e); } // return BlockJUnit4ClassRunner.class; } Class<? extends Runner> runner = runWithAnnotation.value(); if (!runnerImplementsFilterable(runner)) return BlockJUnit4ClassRunner.class; return runner; }
logger.debug("Using AllDefaultPossibilitiesBuilder to get Runner"); r = new AllDefaultPossibilitiesBuilder(true) .runnerForClass(forName);