Beispiel #1
0
  public void testExplodedWarScan() throws Exception {
    final File warParentDir = Files.createTempDir();
    assertTrue(warParentDir.isDirectory());

    WebArchive archive =
        ShrinkWrap.create(WebArchive.class, "explode-me").addClasses(FunAnnotatedClientClass.class);
    archive.as(ExplodedExporter.class).exportExploded(warParentDir);

    File warBaseDir = new File(warParentDir, "explode-me");
    assertTrue(
        "Missing exploded war at " + warBaseDir, new File(warBaseDir, "WEB-INF").isDirectory());

    URL warUrl = new URL(warBaseDir.toURI().toURL() + "/WEB-INF/classes");

    List<URL> urlList = new ArrayList<URL>();
    urlList.add(warUrl);
    MetaDataScanner scanner = createScanner(urlList);

    String annotationToSearchFor = Local.class.getName();
    Set<String> annotated = scanner.getStore().getTypesAnnotatedWith(annotationToSearchFor);
    assertFalse("Cannot find " + annotationToSearchFor + " in " + warBaseDir, annotated.isEmpty());
    Files.deleteDirectoryContents(warParentDir);
    warParentDir.delete();
  }