@ -21,6 +21,7 @@ import net.sf.acegisecurity.GrantedAuthority;
@@ -21,6 +21,7 @@ import net.sf.acegisecurity.GrantedAuthority;
import net.sf.acegisecurity.GrantedAuthorityImpl ;
import net.sf.acegisecurity.acl.AclEntry ;
import net.sf.acegisecurity.providers.UsernamePasswordAuthenticationToken ;
import net.sf.acegisecurity.providers.dao.User ;
/ * *
@ -53,6 +54,11 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
@@ -53,6 +54,11 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
private SimpleAclEntry entry100Marissa = new SimpleAclEntry ( marissa
. getPrincipal ( ) , new NamedEntityObjectIdentity ( "OBJECT" , "100" ) ,
null , 2 ) ;
private UsernamePasswordAuthenticationToken scottWithUserDetails = new UsernamePasswordAuthenticationToken ( new User (
"scott" , "NOT_USED" , true ,
new GrantedAuthority [ ] { new GrantedAuthorityImpl (
"ROLE_EVERYBODY" ) } ) , "not used" ,
new GrantedAuthority [ ] { new GrantedAuthorityImpl ( "ROLE_EVERYBODY" ) , new GrantedAuthorityImpl ( "ROLE_TWO" ) } ) ;
// convenience group
private SimpleAclEntry [ ] acls = { entry100Marissa , entry100Scott , entry100RoleEverybody , entry100RoleOne , entry100RoleTwo } ;
@ -93,7 +99,7 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
@@ -93,7 +99,7 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
resolver . resolveEffectiveAcls ( acls , marissa ) [ 2 ] ) ;
}
public void testResolveAclsForScott ( ) {
public void testResolveAclsForScottWithStringObjectAsPrincipal ( ) {
GrantedAuthorityEffectiveAclsResolver resolver = new GrantedAuthorityEffectiveAclsResolver ( ) ;
assertEquals ( 3 , resolver . resolveEffectiveAcls ( acls , scott ) . length ) ;
assertEquals ( entry100Scott ,
@ -104,6 +110,18 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
@@ -104,6 +110,18 @@ public class GrantedAuthorityEffectiveAclsResolverTests extends TestCase {
resolver . resolveEffectiveAcls ( acls , scott ) [ 2 ] ) ;
}
public void testResolveAclsForScottWithUserDetailsObjectAsPrincipal ( ) {
GrantedAuthorityEffectiveAclsResolver resolver = new GrantedAuthorityEffectiveAclsResolver ( ) ;
assertEquals ( 3 ,
resolver . resolveEffectiveAcls ( acls , scottWithUserDetails ) . length ) ;
assertEquals ( entry100Scott ,
resolver . resolveEffectiveAcls ( acls , scottWithUserDetails ) [ 0 ] ) ;
assertEquals ( entry100RoleEverybody ,
resolver . resolveEffectiveAcls ( acls , scottWithUserDetails ) [ 1 ] ) ;
assertEquals ( entry100RoleTwo ,
resolver . resolveEffectiveAcls ( acls , scottWithUserDetails ) [ 2 ] ) ;
}
public void testResolveAclsReturnsNullIfNoAclsInFirstPlace ( ) {
GrantedAuthorityEffectiveAclsResolver resolver = new GrantedAuthorityEffectiveAclsResolver ( ) ;
assertNull ( resolver . resolveEffectiveAcls ( null , scott ) ) ;