This commit is contained in:
Mateusz Lipowski 2026-05-24 12:10:32 +00:00 committed by GitHub
commit e17446efa6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 15 additions and 0 deletions

View file

@ -324,6 +324,7 @@ public class UsersResource {
attributes.put(UserModel.EMAIL_VERIFIED, emailVerified.toString());
}
addCreatedTimestampConditions(attributes, createdAfter, createdBefore);
attributes.putAll(searchAttributes);
return searchForUser(attributes, realm, userPermissionEvaluator, briefRepresentation, firstResult,
maxResults, false);
@ -456,6 +457,7 @@ public class UsersResource {
parameters.put(UserModel.EMAIL_VERIFIED, emailVerified.toString());
}
addCreatedTimestampConditions(parameters, createdAfter, createdBefore);
parameters.putAll(searchAttributes);
// search /users equivalent to this doesn't include service-accounts so counting shouldn't as well
parameters.put(UserModel.INCLUDE_SERVICE_ACCOUNT, "false");
if (userPermissionEvaluator.canView()) {

View file

@ -136,6 +136,19 @@ public class UserSearchTest extends AbstractUserTest {
assertEquals(0, users.size());
}
@Test
@DatabaseTest
public void searchUserWithQueryParameter() {
createUsers();
String query = mapToSearchQuery(Map.of("test", "test1"));
assertThat(managedRealm.admin().users().searchByAttributes(query), hasSize(1));
List<UserRepresentation> users = managedRealm.admin().users().search("username", null, null, null, null, null, null, query);
assertThat(users, hasSize(1));
assertThat(users.get(0).getUsername(), is("username1"));
assertThat(managedRealm.admin().users().count("username", null, null, null, null, null, null, query), is(1));
}
@Test
@DatabaseTest
public void searchByMultipleAttributes() {