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;
+ }
}