[jboss-cvs] jboss-seam/src/test/misc/org/jboss/seam/test ...
Shane Bryzak
Shane_Bryzak at symantec.com
Tue Nov 14 00:32:38 EST 2006
User: sbryzak2
Date: 06/11/14 00:32:38
Modified: src/test/misc/org/jboss/seam/test SecurityTest.java
Log:
updated security unit test
Revision Changes Path
1.6 +19 -4 jboss-seam/src/test/misc/org/jboss/seam/test/SecurityTest.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: SecurityTest.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/src/test/misc/org/jboss/seam/test/SecurityTest.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- SecurityTest.java 13 Nov 2006 20:16:19 -0000 1.5
+++ SecurityTest.java 14 Nov 2006 05:32:38 -0000 1.6
@@ -17,6 +17,7 @@
import org.jboss.seam.mock.MockExternalContext;
import org.jboss.seam.mock.MockSecureEntity;
import org.jboss.seam.mock.MockServletContext;
+import org.jboss.seam.security.SeamSecurityManager;
import org.jboss.seam.security.UsernamePasswordToken;
import org.jboss.seam.security.acl.JPAIdentityGenerator;
import org.jboss.seam.security.acl.PersistentAclProvider;
@@ -72,6 +73,7 @@
public void testPersistentAcls()
{
Ejb3Configuration ac = new Ejb3Configuration();
+ System.setProperty("java.naming.factory.initial", "org.jnp.interfaces.LocalOnlyContextFactory");
ac.setProperty("hibernate.connection.driver_class", "org.hsqldb.jdbcDriver");
ac.setProperty("hibernate.connection.url", "jdbc:hsqldb:mem:aname");
@@ -108,12 +110,11 @@
perm.setIdentity(ident);
perm.setRecipient("testUser");
perm.setRecipientType(RecipientType.user);
- perm.setMask(0x01 & 0x02); // read/delete permission only
+ perm.setMask(0x01 | 0x02); // read/delete permission only
em.persist(perm);
em.flush();
em.getTransaction().commit();
- // Create an Authentication object in session scope
MockServletContext ctx = new MockServletContext();
MockExternalContext eCtx = new MockExternalContext(ctx);
@@ -121,6 +122,7 @@
Lifecycle.beginRequest(eCtx);
+ // Create an Authentication object in session scope
Contexts.getSessionContext().set("org.jboss.seam.security.authentication",
new UsernamePasswordToken("testUser", "",
new String[] {}));
@@ -129,10 +131,23 @@
"persistentAclProvider");
PersistentAclProvider aclProvider = (PersistentAclProvider) aclProviderComp.newInstance();
aclProvider.setPersistenceContextManager(factory);
+ aclProvider.setAclQuery("select p.mask, p.recipient, p.recipientType from MockAclPermission p " +
+ "where p.identity.objectIdentity = :identity");
+
+ MockSecureEntity e2 = em.find(MockSecureEntity.class, 123);
- /** @todo Under construction */
+ // This check should pass
- // SeamSecurityManager.instance().set
+ // --> will reinstate once PersistentAclProvider.convertToPermissions() works
+ //SeamSecurityManager.instance().checkPermission(e2, "read");
+
+ // This check should fail
+ //try
+ //{
+ //SeamSecurityManager.instance().checkPermission(e2, "special");
+ //assert(false);
+ //}
+ //catch (SecurityException ex) { }
Lifecycle.endRequest();
}
More information about the jboss-cvs-commits
mailing list