You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by cp...@apache.org on 2016/10/06 17:49:24 UTC

[07/43] directory-fortress-core git commit: added more tests

added more tests


Project: http://git-wip-us.apache.org/repos/asf/directory-fortress-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/directory-fortress-core/commit/46ff1f34
Tree: http://git-wip-us.apache.org/repos/asf/directory-fortress-core/tree/46ff1f34
Diff: http://git-wip-us.apache.org/repos/asf/directory-fortress-core/diff/46ff1f34

Branch: refs/heads/master
Commit: 46ff1f34f6014efb706760fb2c2e1f758d61d609
Parents: 527cfea
Author: clp207 <cl...@psu.edu>
Authored: Sat Jan 30 19:11:08 2016 -0500
Committer: clp207 <cl...@psu.edu>
Committed: Wed Mar 30 15:44:22 2016 -0400

----------------------------------------------------------------------
 .../fortress/core/impl/AdminMgrImplTest.java    | 58 +++++++++++++++
 .../fortress/core/impl/FortressJUnitTest.java   |  7 ++
 .../fortress/core/impl/ReviewMgrImplTest.java   | 77 ++++++++++++++++++++
 .../fortress/core/impl/URATestData.java         | 18 +++++
 4 files changed, 160 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/46ff1f34/src/test/java/org/apache/directory/fortress/core/impl/AdminMgrImplTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/directory/fortress/core/impl/AdminMgrImplTest.java b/src/test/java/org/apache/directory/fortress/core/impl/AdminMgrImplTest.java
index 732f12a..0624c07 100755
--- a/src/test/java/org/apache/directory/fortress/core/impl/AdminMgrImplTest.java
+++ b/src/test/java/org/apache/directory/fortress/core/impl/AdminMgrImplTest.java
@@ -38,6 +38,7 @@ import org.apache.directory.fortress.core.model.Permission;
 import org.apache.directory.fortress.core.model.PermissionAttribute;
 import org.apache.directory.fortress.core.model.PermissionAttributeSet;
 import org.apache.directory.fortress.core.model.Role;
+import org.apache.directory.fortress.core.model.RoleConstraint;
 import org.apache.directory.fortress.core.model.SDSet;
 import org.apache.directory.fortress.core.model.Session;
 import org.apache.directory.fortress.core.model.User;
@@ -1890,6 +1891,63 @@ public class AdminMgrImplTest extends TestCase
     	}
     }
     
+    public void testAddPASetToPermission()
+    {
+    	addPASetToPermission( "ADD-PASET-TO-POP TOB_1 TOP_1", PermTestData.TPA_SET_1_NAME, "TOB1_1", PermTestData.OPS_TOP1[0] );   	
+    }
+    
+    public static void addPASetToPermission( String msg, String paSetName, String obj, String[] op )
+    {
+    	LogUtil.logIt(msg);
+    	try
+    	{
+    		AdminMgr adminMgr = AdminMgrFactory.createInstance( TestUtils.getContext() );    		
+
+    		Permission pop = PermTestData.getOp( obj, op );
+    		pop.setPaSetName(paSetName);
+    		
+    		adminMgr.updatePermission(pop);
+    		LOG.debug( "addPASetToPermission name [" + paSetName + "] successful" );
+    	}
+    	catch ( SecurityException ex )
+    	{
+    		LOG.error( "addPASetToPermission name [" + paSetName
+    				+ "] caught SecurityException rc=" + ex.getErrorId() + ", msg=" + ex.getMessage(), ex );
+    		fail( ex.getMessage() );
+    	}
+    }
+    
+    public void testAddUserRoleConstraint() throws SecurityException
+    {
+    	assignUserRoleConstraint( "ASGN-URC TU1 TR1", UserTestData.USERS_TU1[0], RoleTestData.ROLES_TR1[1], URATestData.getRC(URATestData.URC_T1) );
+    }
+    
+    public static void assignUserRoleConstraint( String msg, String[] usr, String[] rle, RoleConstraint rc )
+    {
+        LogUtil.logIt( msg );
+        try
+        {
+            AdminMgr adminMgr = getManagedAdminMgr();
+            ReviewMgr reviewMgr = ReviewMgrImplTest.getManagedReviewMgr();
+            
+            User user = UserTestData.getUser( usr );
+            Role role = RoleTestData.getRole( rle );
+            
+            adminMgr.addRoleConstraint(new UserRole(user.getUserId(), role.getName()), rc);
+           
+            LOG.debug("assignUserRoleConstraint user [" + user.getUserId() + "] role [" + role.getName() + "] " +
+            				" rcvalue [" + rc.getValue() + "]");
+        }
+        catch ( SecurityException ex )
+        {
+            LOG.error(
+                "assignUserRoleConstraint caught SecurityException rc=" + ex.getErrorId() + ", msg="
+                    + ex.getMessage(), ex );
+            fail( ex.getMessage() );
+        }
+    }
+    
+    
     
     /**
      *

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/46ff1f34/src/test/java/org/apache/directory/fortress/core/impl/FortressJUnitTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/directory/fortress/core/impl/FortressJUnitTest.java b/src/test/java/org/apache/directory/fortress/core/impl/FortressJUnitTest.java
index 8885c01..fd26012 100755
--- a/src/test/java/org/apache/directory/fortress/core/impl/FortressJUnitTest.java
+++ b/src/test/java/org/apache/directory/fortress/core/impl/FortressJUnitTest.java
@@ -203,6 +203,9 @@ public class FortressJUnitTest extends TestCase
 
         suite.addTest( new AdminMgrImplTest( "testAddPermissionAttributeSet" ) );
         suite.addTest( new AdminMgrImplTest( "testAddPermissionAttributeToSet" ) );
+        suite.addTest( new AdminMgrImplTest( "testAddPASetToPermission" ) );
+        
+        suite.addTest( new AdminMgrImplTest( "testAddUserRoleConstraint" ) );
         
         /***********************************************************/
         /* 3. Interrogation                                        */
@@ -243,8 +246,12 @@ public class FortressJUnitTest extends TestCase
         suite.addTest( new ReviewMgrImplTest( "testUserPermissions" ) );
         suite.addTest( new ReviewMgrImplTest( "testFindSsdSets" ) );
         suite.addTest( new ReviewMgrImplTest( "testFindDsdSets" ) );
+
         suite.addTest( new ReviewMgrImplTest( "testReadPermissionAttributeSets" ) );
+        suite.addTest( new ReviewMgrImplTest( "testReadPASetFromPermission" ) );
         
+        suite.addTest( new ReviewMgrImplTest( "testReadUserRoleConstraint" ) );
+
         /***********************************************************/
         /* 4. Security Checks                                      */
         /***********************************************************/

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/46ff1f34/src/test/java/org/apache/directory/fortress/core/impl/ReviewMgrImplTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/directory/fortress/core/impl/ReviewMgrImplTest.java b/src/test/java/org/apache/directory/fortress/core/impl/ReviewMgrImplTest.java
index 04508f2..b6371e5 100755
--- a/src/test/java/org/apache/directory/fortress/core/impl/ReviewMgrImplTest.java
+++ b/src/test/java/org/apache/directory/fortress/core/impl/ReviewMgrImplTest.java
@@ -38,6 +38,7 @@ import org.apache.directory.fortress.core.model.Permission;
 import org.apache.directory.fortress.core.model.PermissionAttribute;
 import org.apache.directory.fortress.core.model.PermissionAttributeSet;
 import org.apache.directory.fortress.core.model.Role;
+import org.apache.directory.fortress.core.model.RoleConstraint;
 import org.apache.directory.fortress.core.model.SDSet;
 import org.apache.directory.fortress.core.model.Session;
 import org.apache.directory.fortress.core.model.User;
@@ -193,6 +194,33 @@ public class ReviewMgrImplTest extends TestCase
         }
     }
     
+    public void testReadPASetFromPermission()
+    {
+    	readPASetFromPermission( "RD-PASET-FROM-POP TOB_1 TOP_1", PermTestData.TPA_SET_1_NAME, "TOB1_1", PermTestData.OPS_TOP1[0] );   	
+    }
+
+    public static void readPASetFromPermission( String msg, String paSetName, String obj, String[] op )
+    {
+    	LogUtil.logIt(msg);
+    	try
+    	{
+    		ReviewMgr reviewMgr = getManagedReviewMgr();   		
+
+    		Permission pop = PermTestData.getOp( obj, op );
+
+    		Permission entity = reviewMgr.readPermission(pop);
+    		assertEquals(paSetName, entity.getPaSetName());
+    		
+    		LOG.debug( "readPASetFromPermission name [" + paSetName + "] successful" );
+    	}
+    	catch ( SecurityException ex )
+    	{
+    		LOG.error( "readPASetFromPermission name [" + paSetName
+    				+ "] caught SecurityException rc=" + ex.getErrorId() + ", msg=" + ex.getMessage(), ex );
+    		fail( ex.getMessage() );
+    	}
+    }
+    
     public void testFindPermissionOps()
     {
         // public List<Permission> findPermissions(Permission permOp)
@@ -1578,7 +1606,56 @@ public class ReviewMgrImplTest extends TestCase
         }
     }
 
+    public void testReadUserRoleConstraint()
+    {
+    	readUserRoleConstraint( "RD-URC TU1 TR1", UserTestData.USERS_TU1[0], RoleTestData.ROLES_TR1[1], URATestData.getRC(URATestData.URC_T1) );
+    }
 
+    public static void readUserRoleConstraint( String msg, String[] usr, String[] rle, RoleConstraint rc )
+    {
+    	LogUtil.logIt(msg);
+    	try
+    	{
+    		ReviewMgr reviewMgr = getManagedReviewMgr();   		
+    		User user = UserTestData.getUser( usr );
+    		Role role = RoleTestData.getRole( rle );
+    		
+    		List<UserRole> urs = reviewMgr.assignedRoles(user);
+    		boolean uraFound = false;
+    		boolean urcFound = false;
+    		
+    		for(UserRole ur : urs){
+    			if(ur.getName().equals(role.getName())){
+    				uraFound = true;
+    				
+    				Set<RoleConstraint> rcs = ur.getRoleConstraints();
+    				for(RoleConstraint r : rcs){
+    					if(r.getPaSetName().equals(rc.getPaSetName())){
+    						urcFound = true;
+    						assertEquals(rc.getConstraintType(), r.getConstraintType());
+    						assertEquals(rc.getValue(), r.getValue());
+    					}
+    				}
+    			}
+    		}
+    		
+    		if(!uraFound){
+    			fail("User Role Assignment Not Found");
+    		}
+    		if(!urcFound){
+    			fail("User Role Constraint Not Found");
+    		}
+    		
+    		LOG.debug( "readUserRoleConstraint value [" + rc.getValue() + "] successful" );
+    	}
+    	catch ( SecurityException ex )
+    	{
+    		LOG.error( "readUserRoleConstraint value [" + rc.getValue()
+    				+ "] caught SecurityException rc=" + ex.getErrorId() + ", msg=" + ex.getMessage(), ex );
+    		fail( ex.getMessage() );
+    	}
+    }
+    
     /**
      *
      * @return

http://git-wip-us.apache.org/repos/asf/directory-fortress-core/blob/46ff1f34/src/test/java/org/apache/directory/fortress/core/impl/URATestData.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/directory/fortress/core/impl/URATestData.java b/src/test/java/org/apache/directory/fortress/core/impl/URATestData.java
index f42a4ff..0f1b729 100755
--- a/src/test/java/org/apache/directory/fortress/core/impl/URATestData.java
+++ b/src/test/java/org/apache/directory/fortress/core/impl/URATestData.java
@@ -26,6 +26,8 @@ import java.util.Map;
 import junit.framework.TestCase;
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.directory.fortress.core.model.RoleConstraint;
+import org.apache.directory.fortress.core.model.RoleConstraintType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -944,6 +946,13 @@ public class URATestData extends TestCase
 }
     };
 
+    public static final String[] URC_T1 =
+    {
+    	"TPASET1", // CONSTRAINT_PASET_NM
+    	"FILTER", //CONSTAINT_TYPE
+    	"TPASET1AttributeName1=testattributevalue" //CONSTAIN_VALUE
+    };
+    
     /**
     * The Fortress test data for junit uses 2-dimensional arrays.
     */
@@ -1034,4 +1043,13 @@ public class URATestData extends TestCase
         }
         return listUras;
     }
+    
+    public static RoleConstraint getRC( String[] rc )
+    {
+    	RoleConstraint urc = new RoleConstraint();
+    	urc.setPaSetName(rc[0]);
+    	urc.setConstraintType(RoleConstraintType.valueOf(rc[1]));
+    	urc.setValue(rc[2]);
+        return urc;
+    }
 }