Statement (Statement base, Description description) { TestDirectory annotation = description.getAnnotation(TestDirectory.class); if (annotation == null) throw new IllegalArgumentException("Class " + description.getTestClass() + " misses @TestDirectory annotation"); File source = new File(JavaTestUtil.getJavaTestDataPath() + TEST_DATA_PATH + annotation.value()); File[] annotations = source.listFiles(); if (annotations == null || annotations.length == 0) throw new IllegalArgumentException("Cannot find annotations at " + source); classes = IoTestUtil.createTestDir("test-notNullInstrumenter-" + annotation.value()); for (File file : annotations) IdeaTestUtil.compileFile(file, classes); return super.apply(base, description); }