[jboss-cvs] JBossAS SVN: r67261 - in projects/metadata/trunk/src: test/java/org/jboss/test/metadata/web and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Nov 19 14:38:09 EST 2007


Author: anil.saldhana at jboss.com
Date: 2007-11-19 14:38:09 -0500 (Mon, 19 Nov 2007)
New Revision: 67261

Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/web/spec/SecurityConstraintMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java
Log:
fix excluded web constraints

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/web/spec/SecurityConstraintMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/web/spec/SecurityConstraintMetaData.java	2007-11-19 18:29:24 UTC (rev 67260)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/web/spec/SecurityConstraintMetaData.java	2007-11-19 19:38:09 UTC (rev 67261)
@@ -99,8 +99,7 @@
    public boolean isExcluded()
    {
       boolean isExcluded = authConstraint != null
-      && authConstraint.getRoleNames() != null
-      && authConstraint.getRoleNames().size() == 0;
+      && authConstraint.getRoleNames() == null;
       return isExcluded;
    }
 

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java	2007-11-19 18:29:24 UTC (rev 67260)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/web/WebApp5EverythingUnitTestCase.java	2007-11-19 19:38:09 UTC (rev 67261)
@@ -21,11 +21,7 @@
  */
 package org.jboss.test.metadata.web;
 
-import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
-import java.util.Map;
-import java.util.Set;
 
 import org.jboss.annotation.javaee.Icon;
 import org.jboss.metadata.javaee.spec.DescriptionGroupMetaData;
@@ -34,15 +30,21 @@
 import org.jboss.metadata.javaee.spec.ParamValueMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRoleRefMetaData;
 import org.jboss.metadata.javaee.spec.SecurityRoleRefsMetaData;
+import org.jboss.metadata.web.spec.AuthConstraintMetaData;
 import org.jboss.metadata.web.spec.DispatcherType;
 import org.jboss.metadata.web.spec.FilterMappingMetaData;
 import org.jboss.metadata.web.spec.FilterMetaData;
 import org.jboss.metadata.web.spec.FiltersMetaData;
+import org.jboss.metadata.web.spec.SecurityConstraintMetaData;
 import org.jboss.metadata.web.spec.ServletMappingMetaData;
 import org.jboss.metadata.web.spec.ServletMetaData;
 import org.jboss.metadata.web.spec.ServletsMetaData;
+import org.jboss.metadata.web.spec.TransportGuaranteeType;
+import org.jboss.metadata.web.spec.UserDataConstraintMetaData;
 import org.jboss.metadata.web.spec.Web25MetaData;
 import org.jboss.metadata.web.spec.WebMetaData;
+import org.jboss.metadata.web.spec.WebResourceCollectionMetaData;
+import org.jboss.metadata.web.spec.WebResourceCollectionsMetaData;
 import org.jboss.test.metadata.javaee.AbstractJavaEEEverythingTest;
 import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
@@ -52,6 +54,7 @@
  * TODO: still need to add assertions for all elements
  * 
  * @author Scott.Stark at jboss.org
+ * @author Anil.Saldhana at jboss.com
  * @version $Revision $
  */
 public class WebApp5EverythingUnitTestCase extends AbstractJavaEEEverythingTest
@@ -90,6 +93,7 @@
       assertServletMappings(webApp);
       assertFilters(webApp);
       assertFilterMappings(webApp);
+      assertSecurityConstraints(webApp);
    }
 
    private void assertMessageDestinations5(String prefix, int size, MessageDestinationsMetaData messageDestinations, boolean full)
@@ -157,6 +161,7 @@
          count ++;
       }
    }
+   
    private void assertFilters(WebMetaData webApp)
       throws Exception
    {
@@ -178,6 +183,7 @@
          count ++;
       }
    }
+   
    private void assertFilterMappings(WebMetaData webApp)
       throws Exception
    {
@@ -195,4 +201,59 @@
       assertEquals(DispatcherType.FORWARD, dispatchers.get(0));
       assertEquals(DispatcherType.REQUEST, dispatchers.get(1));
    }
-}
+   
+   // Security Constraints
+   private void assertSecurityConstraints(WebMetaData webApp)
+   {
+      List<SecurityConstraintMetaData> scmdList = webApp.getSecurityContraints();
+      assertEquals(3, scmdList.size());
+      for(SecurityConstraintMetaData scmd:scmdList)
+      { 
+         String id = scmd.getId();
+         if(id.equals("security-constraint0"))
+            assertNormalSecurityConstraint(scmd);
+         else
+            if(id.equals("security-constraint-excluded"))
+               assertExcludedSecurityConstraint(scmd);
+            else
+               if(id.equals("security-constraint-unchecked"))
+                  assertUncheckedSecurityConstraint(scmd); 
+      }
+   }
+     
+   private void assertNormalSecurityConstraint(SecurityConstraintMetaData scmd)
+   {   
+      assertFalse(scmd.isExcluded());
+      assertFalse(scmd.isUnchecked());
+      assertEquals("security-constraint0-display-name",scmd.getDisplayName());
+      WebResourceCollectionsMetaData wrcmd = scmd.getResourceCollections();
+      assertEquals(2, wrcmd.size());
+      int count = 0;
+      for(WebResourceCollectionMetaData wrmd: wrcmd)
+      { 
+         assertEquals(wrmd.getId(), "web-resource-collection" + count, wrmd.getId());
+         assertEquals(wrmd.getWebResourceName(), 
+                "web-resource" + count + "-name", wrmd.getWebResourceName());
+         assertEquals("/resource" + count + "/*", 
+               "/resource" + count + "/*", wrmd.getUrlPatterns().get(0)); 
+         count++;
+      }
+      AuthConstraintMetaData amd = scmd.getAuthConstraint(); 
+      assertEquals("auth-constraint0", amd.getId());
+      assertEquals("role0", amd.getRoleNames().get(0));
+      
+      UserDataConstraintMetaData udcmd = scmd.getUserDataConstraint(); 
+      assertEquals(TransportGuaranteeType.NONE,udcmd.getTransportGuarantee());
+   }
+   
+   private void assertExcludedSecurityConstraint(SecurityConstraintMetaData scmd)
+   {   
+      assertTrue("Excluded Sec Constraint?", scmd.isExcluded()); 
+   }
+   
+   private void assertUncheckedSecurityConstraint(SecurityConstraintMetaData scmd)
+   {  
+      assertTrue("Unchecked Sec Constraint?", scmd.isUnchecked());
+      assertNull(scmd.getAuthConstraint());
+   }
+}
\ No newline at end of file




More information about the jboss-cvs-commits mailing list