SEC-1492: Added RoleHierarchyAuthoritiesMapper as the new preferred way of using a RoleHierarchy.
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
package org.springframework.security.access.hierarchicalroles;
|
||||
|
||||
import static junit.framework.Assert.assertEquals;
|
||||
|
||||
import org.junit.*;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.security.core.authority.AuthorityUtils;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @author Luke Taylor
|
||||
*/
|
||||
public class RoleHierarchyAuthoritiesMapperTests {
|
||||
|
||||
@Test
|
||||
public void expectedAuthoritiesAreReturned() {
|
||||
RoleHierarchyImpl rh = new RoleHierarchyImpl();
|
||||
rh.setHierarchy("ROLE_A > ROLE_B\nROLE_B > ROLE_C");
|
||||
RoleHierarchyAuthoritiesMapper mapper = new RoleHierarchyAuthoritiesMapper(rh);
|
||||
|
||||
Collection<? extends GrantedAuthority> authorities =
|
||||
mapper.mapAuthorities(AuthorityUtils.createAuthorityList("ROLE_A", "ROLE_D"));
|
||||
|
||||
assertEquals(4, authorities.size());
|
||||
|
||||
mapper = new RoleHierarchyAuthoritiesMapper(new NullRoleHierarchy());
|
||||
|
||||
authorities = mapper.mapAuthorities(AuthorityUtils.createAuthorityList("ROLE_A", "ROLE_D"));
|
||||
|
||||
assertEquals(2, authorities.size());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user