@@ -40,8 +40,7 @@ public class RoleHierarchyImplTests {
40
40
public void testRoleHierarchyWithNullOrEmptyAuthorities () {
41
41
List <GrantedAuthority > authorities0 = null ;
42
42
List <GrantedAuthority > authorities1 = new ArrayList <>();
43
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
44
- roleHierarchyImpl .setHierarchy ("ROLE_A > ROLE_B" );
43
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl .of ("ROLE_A > ROLE_B" );
45
44
assertThat (roleHierarchyImpl .getReachableGrantedAuthorities (authorities0 )).isNotNull ();
46
45
assertThat (roleHierarchyImpl .getReachableGrantedAuthorities (authorities0 )).isEmpty ();
47
46
assertThat (roleHierarchyImpl .getReachableGrantedAuthorities (authorities1 )).isNotNull ();
@@ -53,8 +52,7 @@ public void testSimpleRoleHierarchy() {
53
52
List <GrantedAuthority > authorities0 = AuthorityUtils .createAuthorityList ("ROLE_0" );
54
53
List <GrantedAuthority > authorities1 = AuthorityUtils .createAuthorityList ("ROLE_A" );
55
54
List <GrantedAuthority > authorities2 = AuthorityUtils .createAuthorityList ("ROLE_A" , "ROLE_B" );
56
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
57
- roleHierarchyImpl .setHierarchy ("ROLE_A > ROLE_B" );
55
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl .of ("ROLE_A > ROLE_B" );
58
56
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
59
57
roleHierarchyImpl .getReachableGrantedAuthorities (authorities0 ), authorities0 ))
60
58
.isTrue ();
@@ -72,8 +70,10 @@ public void testTransitiveRoleHierarchies() {
72
70
List <GrantedAuthority > authorities2 = AuthorityUtils .createAuthorityList ("ROLE_A" , "ROLE_B" , "ROLE_C" );
73
71
List <GrantedAuthority > authorities3 = AuthorityUtils .createAuthorityList ("ROLE_A" , "ROLE_B" , "ROLE_C" ,
74
72
"ROLE_D" );
75
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
76
- roleHierarchyImpl .setHierarchy ("ROLE_A > ROLE_B\n ROLE_B > ROLE_C" );
73
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl .of ("""
74
+ ROLE_A > ROLE_B
75
+ ROLE_B > ROLE_C
76
+ """ );
77
77
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
78
78
roleHierarchyImpl .getReachableGrantedAuthorities (authorities1 ), authorities2 ))
79
79
.isTrue ();
@@ -94,8 +94,13 @@ public void testComplexRoleHierarchy() {
94
94
List <GrantedAuthority > authoritiesOutput3 = AuthorityUtils .createAuthorityList ("ROLE_C" , "ROLE_D" );
95
95
List <GrantedAuthority > authoritiesInput4 = AuthorityUtils .createAuthorityList ("ROLE_D" );
96
96
List <GrantedAuthority > authoritiesOutput4 = AuthorityUtils .createAuthorityList ("ROLE_D" );
97
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
98
- roleHierarchyImpl .setHierarchy ("ROLE_A > ROLE_B\n ROLE_A > ROLE_C\n ROLE_C > ROLE_D\n ROLE_B > ROLE_D" );
97
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl
98
+ .of ("""
99
+ ROLE_A > ROLE_B
100
+ ROLE_A > ROLE_C
101
+ ROLE_C > ROLE_D
102
+ ROLE_B > ROLE_D
103
+ """ );
99
104
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
100
105
roleHierarchyImpl .getReachableGrantedAuthorities (authoritiesInput1 ), authoritiesOutput1 ))
101
106
.isTrue ();
@@ -138,8 +143,7 @@ public void testSimpleRoleHierarchyWithCustomGrantedAuthorityImplementation() {
138
143
List <GrantedAuthority > authorities0 = HierarchicalRolesTestHelper .createAuthorityList ("ROLE_0" );
139
144
List <GrantedAuthority > authorities1 = HierarchicalRolesTestHelper .createAuthorityList ("ROLE_A" );
140
145
List <GrantedAuthority > authorities2 = HierarchicalRolesTestHelper .createAuthorityList ("ROLE_A" , "ROLE_B" );
141
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
142
- roleHierarchyImpl .setHierarchy ("ROLE_A > ROLE_B" );
146
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl .of ("ROLE_A > ROLE_B" );
143
147
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthoritiesCompareByAuthorityString (
144
148
roleHierarchyImpl .getReachableGrantedAuthorities (authorities0 ), authorities0 ))
145
149
.isTrue ();
@@ -157,12 +161,22 @@ public void testWhitespaceRoleHierarchies() {
157
161
List <GrantedAuthority > authorities2 = AuthorityUtils .createAuthorityList ("ROLE A" , "ROLE B" , "ROLE>C" );
158
162
List <GrantedAuthority > authorities3 = AuthorityUtils .createAuthorityList ("ROLE A" , "ROLE B" , "ROLE>C" ,
159
163
"ROLE D" );
160
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
161
- roleHierarchyImpl .setHierarchy ("ROLE A > ROLE B\n ROLE B > ROLE>C" );
164
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl .of ("""
165
+ ROLE A > ROLE B
166
+ ROLE B > ROLE>C
167
+ """ );
162
168
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
163
169
roleHierarchyImpl .getReachableGrantedAuthorities (authorities1 ), authorities2 ))
164
170
.isTrue ();
165
171
roleHierarchyImpl .setHierarchy ("ROLE A > ROLE B\n ROLE B > ROLE>C\n ROLE>C > ROLE D" );
172
+ assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
173
+ roleHierarchyImpl .getReachableGrantedAuthorities (authorities1 ), authorities2 ))
174
+ .isTrue ();
175
+ roleHierarchyImpl .setHierarchy ("""
176
+ ROLE A > ROLE B
177
+ ROLE B > ROLE>C
178
+ ROLE>C > ROLE D
179
+ """ );
166
180
assertThat (HierarchicalRolesTestHelper .containTheSameGrantedAuthorities (
167
181
roleHierarchyImpl .getReachableGrantedAuthorities (authorities1 ), authorities3 ))
168
182
.isTrue ();
@@ -200,8 +214,8 @@ public void singleLineLargeHierarchy() {
200
214
List <GrantedAuthority > flatAuthorities = AuthorityUtils .createAuthorityList ("ROLE_HIGHEST" );
201
215
List <GrantedAuthority > allAuthorities = AuthorityUtils .createAuthorityList ("ROLE_HIGHEST" , "ROLE_HIGHER" ,
202
216
"ROLE_LOW" , "ROLE_LOWER" );
203
- RoleHierarchyImpl roleHierarchyImpl = new RoleHierarchyImpl ();
204
- roleHierarchyImpl . setHierarchy ("ROLE_HIGHEST > ROLE_HIGHER > ROLE_LOW > ROLE_LOWER" );
217
+ RoleHierarchyImpl roleHierarchyImpl = RoleHierarchyImpl
218
+ . of ("ROLE_HIGHEST > ROLE_HIGHER > ROLE_LOW > ROLE_LOWER" );
205
219
assertThat (roleHierarchyImpl .getReachableGrantedAuthorities (flatAuthorities ))
206
220
.containsExactlyInAnyOrderElementsOf (allAuthorities );
207
221
}
0 commit comments