@Test
public void testScan() throws Exception {

    createFiles();
    DevClassesScanner devClassesScanner = new DevClassesScanner(BuildToolType.MAVEN);
    ScanResult scanResult = devClassesScanner.scan(baseDirectory, EXTENSION_POINTS);
    assertThat(scanResult.getClassLoader(), notNullValue());
    PluginImplementationsAware contents = scanResult.getContents();
    assertThat(contents.getExtensionPoints(), hasSize(2));
    List<Class> pluginImplementations = contents.getImplementations(TestAnnotation.class);
    assertThat(pluginImplementations, hasSize(1));
    assertThat(pluginImplementations, contains(AnnotatedImpl.class));
    List<Class> testExtensionPointImplementations = contents.getImplementations(TestExtensionPoint.class);
    assertThat(testExtensionPointImplementations, hasSize(1));
    assertThat(testExtensionPointImplementations, contains(TestExtensionPointImpl.class));
}