You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2013/01/15 14:23:51 UTC

svn commit: r1433400 - in /archiva/redback/redback-core/trunk/redback-rbac: redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/ redback-rbac-providers/redback-rbac-ldap/src/test/ redback-rbac-providers/redback-r...

Author: olamy
Date: Tue Jan 15 13:23:50 2013
New Revision: 1433400

URL: http://svn.apache.org/viewvc?rev=1433400&view=rev
Log:
ldap rbacmanager pass tck

Modified:
    archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManager.java
    archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManagerTest.java
    archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/security.properties
    archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-tests/src/main/java/org/apache/archiva/redback/tests/AbstractRbacManagerTestCase.java

Modified: archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManager.java?rev=1433400&r1=1433399&r2=1433400&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/main/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManager.java Tue Jan 15 13:23:50 2013
@@ -437,8 +437,7 @@ public class LdapRbacManager
             {
                 if ( !userRoles.contains( roleName ) )
                 {
-                    // TODO real role with permission ?
-                    unassignedRoles.add( new RoleImpl( roleName ) );
+                    unassignedRoles.add( rbacImpl.getRole( roleName ) );
                 }
             }
             return unassignedRoles;
@@ -707,6 +706,13 @@ public class LdapRbacManager
             try
             {
                 ldapRoleMapper.saveRole( role.getName() );
+                if ( !role.getChildRoleNames().isEmpty() )
+                {
+                    for ( String roleName : role.getChildRoleNames() )
+                    {
+                        ldapRoleMapper.saveRole( roleName );
+                    }
+                }
                 fireRbacRoleSaved( role );
             }
             catch ( MappingException e )
@@ -771,8 +777,6 @@ public class LdapRbacManager
                 }
             }
 
-
-
             for ( String role : currentUserRoles )
             {
                 if ( !userAssignment.getRoleNames().contains( role ) && writableLdap )

Modified: archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManagerTest.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManagerTest.java?rev=1433400&r1=1433399&r2=1433400&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManagerTest.java (original)
+++ archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/java/org/apache/archiva/redback/rbac/ldap/LdapRbacManagerTest.java Tue Jan 15 13:23:50 2013
@@ -300,6 +300,6 @@ public class LdapRbacManagerTest
 
     protected boolean supportChildRole()
     {
-        return false;
+        return true;
     }
 }

Modified: archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/security.properties
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/security.properties?rev=1433400&r1=1433399&r2=1433400&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/security.properties (original)
+++ archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-providers/redback-rbac-ldap/src/test/security.properties Tue Jan 15 13:23:50 2013
@@ -21,6 +21,7 @@ ldap.config.groups.role.user-admin=User 
 ldap.config.groups.role.sys-admin=System Administrator
 ldap.config.groups.role.trusted-dev=Trusted Developer
 ldap.config.groups.role.developer=Developer
+ldap.config.groups.role.super-developer=SUPER_DEVELOPER
 ldap.config.groups.role.thetestrole=Test Role
 
 

Modified: archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-tests/src/main/java/org/apache/archiva/redback/tests/AbstractRbacManagerTestCase.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-tests/src/main/java/org/apache/archiva/redback/tests/AbstractRbacManagerTestCase.java?rev=1433400&r1=1433399&r2=1433400&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-tests/src/main/java/org/apache/archiva/redback/tests/AbstractRbacManagerTestCase.java (original)
+++ archiva/redback/redback-core/trunk/redback-rbac/redback-rbac-tests/src/main/java/org/apache/archiva/redback/tests/AbstractRbacManagerTestCase.java Tue Jan 15 13:23:50 2013
@@ -426,13 +426,14 @@ public abstract class AbstractRbacManage
 
         adminRole = manager.saveRole( adminRole );
 
-        String adminPrincipal = "admin";
+        // don't use admin as ldap group need at least one member
+        String adminPrincipal = "theadmin";
         UserAssignment assignment = manager.createUserAssignment( adminPrincipal );
         assignment.addRoleName( adminRole );
         assignment = manager.saveUserAssignment( assignment );
 
         assertEquals( 1, assignment.getRoleNames().size() );
-        assertEquals( incAssignements( 1 ), manager.getAssignedRoles( adminPrincipal ).size() );
+        assertEquals( 1, manager.getAssignedRoles( adminPrincipal ).size() );
     }
 
     @Test