[jboss-cvs] JBossAS SVN: r70963 - projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/web.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Mar 18 16:57:04 EDT 2008


Author: scott.stark at jboss.org
Date: 2008-03-18 16:57:04 -0400 (Tue, 18 Mar 2008)
New Revision: 70963

Modified:
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java
Log:
Initial test of the web AnnotationMergedView

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java	2008-03-18 20:38:16 UTC (rev 70962)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/annotation/web/AnnotationWebUnitTestCase.java	2008-03-18 20:57:04 UTC (rev 70963)
@@ -28,6 +28,7 @@
 
 import javax.transaction.UserTransaction;
 
+import org.jboss.metadata.annotation.creator.ejb.EjbJar30Creator;
 import org.jboss.metadata.annotation.creator.web.Web25MetaDataCreator;
 import org.jboss.metadata.annotation.finder.AnnotationFinder;
 import org.jboss.metadata.annotation.finder.DefaultAnnotationFinder;
@@ -46,8 +47,10 @@
 import org.jboss.metadata.javaee.spec.RunAsMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRoleMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRolesMetaData;
+import org.jboss.metadata.web.spec.AnnotationMergedView;
 import org.jboss.metadata.web.spec.ServletMetaData;
 import org.jboss.metadata.web.spec.Web25MetaData;
+import org.jboss.metadata.web.spec.WebMetaData;
 import org.jboss.test.BaseTestCase;
 import org.jboss.test.metadata.annotation.ejb3.MyStatelessLocal;
 
@@ -138,6 +141,46 @@
       assertEquals("javax.jms.Queue", mailQueue.getType());
    }
 
+   public void testAnnotationMergedViewWithNoXml()
+      throws Exception
+   {
+      Class<?>[] webClasses = {
+            MyServlet.class
+      };
+      List<Class<?>> classes = Arrays.asList(webClasses);
+      System.out.println("Processing classes: "+classes);
+
+      AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();
+      Web25MetaDataCreator creator = new Web25MetaDataCreator(finder);
+      Web25MetaData metaData = creator.create(classes);
+
+      WebMetaData specMetaData = new Web25MetaData();
+      WebMetaData merged = new Web25MetaData();
+      AnnotationMergedView.merge(merged, specMetaData, metaData);
+
+      assertTrue(metaData.is25());
+      assertEquals("2.5", metaData.getVersion());
+
+      assertEnv(metaData.getJndiEnvironmentRefsGroup());
+
+      // MyServlet @RunAs
+      assertNotNull(metaData.getServlets());
+      ServletMetaData servlet = metaData.getServlets().get("MyServlet");
+      assertNotNull(servlet);
+      RunAsMetaData runAs = servlet.getRunAs();
+      assertNotNull(runAs);
+      assertEquals("InternalUser", runAs.getRoleName());
+      // @DeclareRoles
+      SecurityRolesMetaData securityRoles = metaData.getSecurityRoles();
+      assertNotNull(securityRoles);
+      assertEquals(2, securityRoles.size());
+      SecurityRoleMetaData role1 = securityRoles.get("Role1");
+      assertNotNull(role1);
+      assertEquals("Role1", role1.getRoleName());
+      SecurityRoleMetaData role2 = securityRoles.get("Role2");
+      assertNotNull(role2);
+      assertEquals("Role2", role2.getRoleName());
+   }
    public void test1() throws Exception
    {
       AnnotationFinder<AnnotatedElement> finder = new DefaultAnnotationFinder<AnnotatedElement>();




More information about the jboss-cvs-commits mailing list