|
9 | 9 |
|
10 | 10 | package org.elasticsearch.xpack.security.authz.microsoft; |
11 | 11 |
|
12 | | -import com.microsoft.graph.models.DirectoryObjectCollectionResponse; |
13 | 12 | import com.microsoft.graph.models.Group; |
| 13 | +import com.microsoft.graph.models.GroupCollectionResponse; |
14 | 14 | import com.microsoft.graph.models.odataerrors.MainError; |
15 | 15 | import com.microsoft.graph.models.odataerrors.ODataError; |
16 | 16 | import com.microsoft.graph.serviceclient.GraphServiceClient; |
17 | 17 | import com.microsoft.graph.users.UsersRequestBuilder; |
18 | 18 | import com.microsoft.graph.users.item.UserItemRequestBuilder; |
| 19 | +import com.microsoft.graph.users.item.transitivememberof.graphgroup.GraphGroupRequestBuilder; |
19 | 20 | import com.microsoft.graph.users.item.transitivememberof.TransitiveMemberOfRequestBuilder; |
20 | 21 | import com.microsoft.kiota.RequestAdapter; |
21 | 22 |
|
|
46 | 47 | import static org.hamcrest.Matchers.equalTo; |
47 | 48 | import static org.mockito.ArgumentMatchers.any; |
48 | 49 | import static org.mockito.ArgumentMatchers.eq; |
49 | | -import static org.mockito.Mockito.*; |
| 50 | +import static org.mockito.Mockito.when; |
| 51 | +import static org.mockito.Mockito.mock; |
| 52 | +import static org.mockito.Mockito.doAnswer; |
50 | 53 |
|
51 | 54 | public class MicrosoftGraphAuthzRealmTests extends ESTestCase { |
52 | 55 |
|
@@ -96,13 +99,15 @@ public void testLookupUser() { |
96 | 99 | when(userItemRequestBuilder.get(any())).thenReturn(msUser); |
97 | 100 |
|
98 | 101 | final var memberOfRequestBuilder = mock(TransitiveMemberOfRequestBuilder.class); |
| 102 | + final var graphGroupRequestBuilder = mock(GraphGroupRequestBuilder.class); |
99 | 103 | final var group = new Group(); |
100 | 104 | group.setId(groupId); |
101 | | - final var groupMembership = new DirectoryObjectCollectionResponse(); |
| 105 | + final var groupMembership = new GroupCollectionResponse(); |
102 | 106 | groupMembership.setValue(List.of(group)); |
103 | 107 |
|
104 | 108 | when(userItemRequestBuilder.transitiveMemberOf()).thenReturn(memberOfRequestBuilder); |
105 | | - when(memberOfRequestBuilder.get(any())).thenReturn(groupMembership); |
| 109 | + when(memberOfRequestBuilder.graphGroup()).thenReturn(graphGroupRequestBuilder); |
| 110 | + when(graphGroupRequestBuilder.get(any())).thenReturn(groupMembership); |
106 | 111 |
|
107 | 112 | final var licenseState = MockLicenseState.createMock(); |
108 | 113 | when(licenseState.isAllowed(eq(MICROSOFT_GRAPH_FEATURE))).thenReturn(true); |
@@ -176,14 +181,16 @@ public void testHandleGetGroupMembershipError() { |
176 | 181 | when(userItemRequestBuilder.get(any())).thenReturn(msUser); |
177 | 182 |
|
178 | 183 | final var memberOfRequestBuilder = mock(TransitiveMemberOfRequestBuilder.class); |
| 184 | + final var graphGroupRequestBuilder = mock(GraphGroupRequestBuilder.class); |
179 | 185 | final var graphError = new ODataError(); |
180 | 186 | final var error = new MainError(); |
181 | 187 | error.setCode("badRequest"); |
182 | 188 | error.setMessage("bad stuff happened"); |
183 | 189 | graphError.setError(error); |
184 | 190 |
|
185 | 191 | when(userItemRequestBuilder.transitiveMemberOf()).thenReturn(memberOfRequestBuilder); |
186 | | - when(memberOfRequestBuilder.get(any())).thenThrow(graphError); |
| 192 | + when(memberOfRequestBuilder.graphGroup()).thenReturn(graphGroupRequestBuilder); |
| 193 | + when(graphGroupRequestBuilder.get(any())).thenThrow(graphError); |
187 | 194 |
|
188 | 195 | final var licenseState = MockLicenseState.createMock(); |
189 | 196 | when(licenseState.isAllowed(eq(MICROSOFT_GRAPH_FEATURE))).thenReturn(true); |
@@ -222,25 +229,27 @@ public void testGroupMembershipPagination() { |
222 | 229 | when(userItemRequestBuilder.get(any())).thenReturn(msUser); |
223 | 230 |
|
224 | 231 | final var memberOfRequestBuilder = mock(TransitiveMemberOfRequestBuilder.class); |
| 232 | + final var graphGroupRequestBuilder = mock(GraphGroupRequestBuilder.class); |
225 | 233 | final var group1 = new Group(); |
226 | 234 | group1.setId(groupId); |
227 | | - final var groupMembership1 = new DirectoryObjectCollectionResponse(); |
| 235 | + final var groupMembership1 = new GroupCollectionResponse(); |
228 | 236 | groupMembership1.setValue(List.of(group1)); |
229 | 237 | groupMembership1.setOdataNextLink("http://localhost:12345/page2"); |
230 | 238 |
|
231 | 239 | final var group2 = new Group(); |
232 | 240 | group2.setId(groupId2); |
233 | | - final var groupMembership2 = new DirectoryObjectCollectionResponse(); |
| 241 | + final var groupMembership2 = new GroupCollectionResponse(); |
234 | 242 | groupMembership2.setValue(List.of(group2)); |
235 | 243 | groupMembership2.setOdataNextLink("http://localhost:12345/page3"); |
236 | 244 |
|
237 | 245 | final var group3 = new Group(); |
238 | 246 | group3.setId(groupId3); |
239 | | - final var groupMembership3 = new DirectoryObjectCollectionResponse(); |
| 247 | + final var groupMembership3 = new GroupCollectionResponse(); |
240 | 248 | groupMembership3.setValue(List.of(group3)); |
241 | 249 |
|
242 | 250 | when(userItemRequestBuilder.transitiveMemberOf()).thenReturn(memberOfRequestBuilder); |
243 | | - when(memberOfRequestBuilder.get(any())).thenReturn(groupMembership1); |
| 251 | + when(memberOfRequestBuilder.graphGroup()).thenReturn(graphGroupRequestBuilder); |
| 252 | + when(graphGroupRequestBuilder.get(any())).thenReturn(groupMembership1); |
244 | 253 | when(requestAdapter.send(any(), any(), any())).thenReturn(groupMembership2, groupMembership3); |
245 | 254 |
|
246 | 255 | final var licenseState = MockLicenseState.createMock(); |
|
0 commit comments