From b7d7e22570b43000b41af6aaa1fee38dd0b1fb91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bernhard=20M=C3=BCller?= Date: Thu, 23 Jul 2026 14:02:23 +0200 Subject: [PATCH] feat(iam): add AdminIamService.getAllUsers() --- .../backend/iam/service/AdminIamService.java | 5 +++++ .../iam/service/AdminIamServiceTest.java | 18 ++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/eeg_backend/src/main/java/at/mueller/eeg/backend/iam/service/AdminIamService.java b/eeg_backend/src/main/java/at/mueller/eeg/backend/iam/service/AdminIamService.java index 7acad0d..c359e7a 100644 --- a/eeg_backend/src/main/java/at/mueller/eeg/backend/iam/service/AdminIamService.java +++ b/eeg_backend/src/main/java/at/mueller/eeg/backend/iam/service/AdminIamService.java @@ -26,6 +26,11 @@ public class AdminIamService { return userRepository.findAllByStatusAndEmailVerified(RegistrationStatus.PENDING, true); } + @Transactional(readOnly = true) + public List getAllUsers() { + return userRepository.findAllByOrderByCreatedAtDesc(); + } + @Transactional public void approveUser(UUID userId) { User user = userRepository.findById(userId) diff --git a/eeg_backend/src/test/java/at/mueller/eeg/backend/iam/service/AdminIamServiceTest.java b/eeg_backend/src/test/java/at/mueller/eeg/backend/iam/service/AdminIamServiceTest.java index 4e1c9d4..2a37297 100644 --- a/eeg_backend/src/test/java/at/mueller/eeg/backend/iam/service/AdminIamServiceTest.java +++ b/eeg_backend/src/test/java/at/mueller/eeg/backend/iam/service/AdminIamServiceTest.java @@ -124,4 +124,22 @@ class AdminIamServiceTest { assertThrows(ResponseStatusException.class, () -> adminIamService.rejectUser(unknownId)); } + + @Test + void getAllUsers() { + User approvedUser = new User(); + approvedUser.setId(UUID.randomUUID()); + approvedUser.setEmail("approved@example.com"); + approvedUser.setStatus(RegistrationStatus.APPROVED); + + when(userRepository.findAllByOrderByCreatedAtDesc()) + .thenReturn(List.of(testUser, approvedUser)); + + List result = adminIamService.getAllUsers(); + + assertEquals(2, result.size()); + assertEquals("test@example.com", result.get(0).getEmail()); + assertEquals("approved@example.com", result.get(1).getEmail()); + verify(userRepository).findAllByOrderByCreatedAtDesc(); + } }