in component-test/src/main/java/TestUsers.java [127:150]
public void testAdminProvisioning() throws InterruptedException {
try (final AutoUserContext ignore = loginAdmin()) {
final List<Role> roleIdentifiers = getTestSubject().getRoles();
Assert.assertTrue(Helpers.instancePresent(roleIdentifiers, Role::getIdentifier, ADMIN_ROLE));
final Role role = getTestSubject().getRole(ADMIN_ROLE);
Assert.assertNotNull(role);
Assert.assertTrue(role.getPermissions().contains(constructFullAccessPermission(PermittableGroupIds.IDENTITY_MANAGEMENT)));
Assert.assertTrue(role.getPermissions().contains(constructFullAccessPermission(PermittableGroupIds.ROLE_MANAGEMENT)));
final List<User> userIdentifiers = getTestSubject().getUsers();
Assert.assertTrue(Helpers.instancePresent(userIdentifiers, User::getIdentifier, ADMIN_IDENTIFIER));
final User user = getTestSubject().getUser(ADMIN_IDENTIFIER);
Assert.assertNotNull(user);
Assert.assertEquals(ADMIN_IDENTIFIER, user.getIdentifier());
Assert.assertEquals(ADMIN_ROLE, user.getRole());
final Set<Permission> adminPermittableGroups = getTestSubject().getUserPermissions(ADMIN_IDENTIFIER);
Assert.assertTrue(adminPermittableGroups.contains(new Permission(PermittableGroupIds.SELF_MANAGEMENT, AllowedOperation.ALL)));
Assert.assertTrue(adminPermittableGroups.contains(new Permission(PermittableGroupIds.IDENTITY_MANAGEMENT, AllowedOperation.ALL)));
Assert.assertTrue(adminPermittableGroups.contains(new Permission(PermittableGroupIds.ROLE_MANAGEMENT, AllowedOperation.ALL)));
}
}