@ -14,11 +14,12 @@
@@ -14,11 +14,12 @@
package org.springframework.security.access.hierarchicalroles ;
import static org.junit.Assert.assertFalse ;
import static org.junit.Assert.assertTrue ;
import static org.junit.Assert.* ;
import java.util.ArrayList ;
import java.util.List ;
import org.apache.commons.collections.CollectionUtils ;
import org.junit.Test ;
import org.springframework.security.core.GrantedAuthority ;
import org.springframework.security.core.authority.AuthorityUtils ;
@ -52,4 +53,91 @@ public class TestHelperTests {
@@ -52,4 +53,91 @@ public class TestHelperTests {
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities4 , authorities5 ) ) ;
}
// SEC-863
@Test
public void testToListOfAuthorityStrings ( ) {
List < GrantedAuthority > authorities1 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_B" ) ;
List < GrantedAuthority > authorities2 = AuthorityUtils . createAuthorityList ( "ROLE_B" , "ROLE_A" ) ;
List < GrantedAuthority > authorities3 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_C" ) ;
List < GrantedAuthority > authorities4 = AuthorityUtils . createAuthorityList ( "ROLE_A" ) ;
List < GrantedAuthority > authorities5 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_A" ) ;
List < String > authoritiesStrings1 = new ArrayList < String > ( ) ;
authoritiesStrings1 . add ( "ROLE_A" ) ;
authoritiesStrings1 . add ( "ROLE_B" ) ;
List < String > authoritiesStrings2 = new ArrayList < String > ( ) ;
authoritiesStrings2 . add ( "ROLE_B" ) ;
authoritiesStrings2 . add ( "ROLE_A" ) ;
List < String > authoritiesStrings3 = new ArrayList < String > ( ) ;
authoritiesStrings3 . add ( "ROLE_A" ) ;
authoritiesStrings3 . add ( "ROLE_C" ) ;
List < String > authoritiesStrings4 = new ArrayList < String > ( ) ;
authoritiesStrings4 . add ( "ROLE_A" ) ;
List < String > authoritiesStrings5 = new ArrayList < String > ( ) ;
authoritiesStrings5 . add ( "ROLE_A" ) ;
authoritiesStrings5 . add ( "ROLE_A" ) ;
assertTrue ( CollectionUtils . isEqualCollection (
HierarchicalRolesTestHelper . toListOfAuthorityStrings ( authorities1 ) , authoritiesStrings1 ) ) ;
assertTrue ( CollectionUtils . isEqualCollection (
HierarchicalRolesTestHelper . toListOfAuthorityStrings ( authorities2 ) , authoritiesStrings2 ) ) ;
assertTrue ( CollectionUtils . isEqualCollection (
HierarchicalRolesTestHelper . toListOfAuthorityStrings ( authorities3 ) , authoritiesStrings3 ) ) ;
assertTrue ( CollectionUtils . isEqualCollection (
HierarchicalRolesTestHelper . toListOfAuthorityStrings ( authorities4 ) , authoritiesStrings4 ) ) ;
assertTrue ( CollectionUtils . isEqualCollection (
HierarchicalRolesTestHelper . toListOfAuthorityStrings ( authorities5 ) , authoritiesStrings5 ) ) ;
}
// SEC-863
@Test
public void testContainTheSameGrantedAuthoritiesCompareByAuthorityString ( ) {
List < GrantedAuthority > authorities1 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_B" ) ;
List < GrantedAuthority > authorities2 = AuthorityUtils . createAuthorityList ( "ROLE_B" , "ROLE_A" ) ;
List < GrantedAuthority > authorities3 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_C" ) ;
List < GrantedAuthority > authorities4 = AuthorityUtils . createAuthorityList ( "ROLE_A" ) ;
List < GrantedAuthority > authorities5 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_A" ) ;
assertTrue ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( null , null ) ) ;
assertTrue ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities1 , authorities1 ) ) ;
assertTrue ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities1 , authorities2 ) ) ;
assertTrue ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities2 , authorities1 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( null , authorities1 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities1 , null ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities1 , authorities3 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities3 , authorities1 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities1 , authorities4 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities4 , authorities1 ) ) ;
assertFalse ( HierarchicalRolesTestHelper . containTheSameGrantedAuthorities ( authorities4 , authorities5 ) ) ;
}
// SEC-863
@Test
public void testContainTheSameGrantedAuthoritiesCompareByAuthorityStringWithAuthorityLists ( ) {
List < GrantedAuthority > authorities1 = HierarchicalRolesTestHelper . createAuthorityList ( "ROLE_A" , "ROLE_B" ) ;
List < GrantedAuthority > authorities2 = AuthorityUtils . createAuthorityList ( "ROLE_A" , "ROLE_B" ) ;
assertTrue ( HierarchicalRolesTestHelper . containTheSameGrantedAuthoritiesCompareByAuthorityString ( authorities1 , authorities2 ) ) ;
}
// SEC-863
@Test
public void testCreateAuthorityList ( ) {
List < GrantedAuthority > authorities1 = HierarchicalRolesTestHelper . createAuthorityList ( "ROLE_A" ) ;
assertEquals ( authorities1 . size ( ) , 1 ) ;
assertEquals ( "ROLE_A" , authorities1 . get ( 0 ) . getAuthority ( ) ) ;
List < GrantedAuthority > authorities2 = HierarchicalRolesTestHelper . createAuthorityList ( "ROLE_A" , "ROLE_C" ) ;
assertEquals ( authorities2 . size ( ) , 2 ) ;
assertEquals ( "ROLE_A" , authorities2 . get ( 0 ) . getAuthority ( ) ) ;
assertEquals ( "ROLE_C" , authorities2 . get ( 1 ) . getAuthority ( ) ) ;
}
}