Sync: code local unifié
Synchronisation du code source local (fait foi). Signed-off-by: lions dev Team
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
package dev.lions.unionflow.server.service;
|
||||
|
||||
import dev.lions.unionflow.server.client.RoleServiceClient;
|
||||
import dev.lions.unionflow.server.client.UserServiceClient;
|
||||
import dev.lions.user.manager.dto.user.UserDTO;
|
||||
import dev.lions.user.manager.dto.user.UserSearchResultDTO;
|
||||
import io.quarkus.test.InjectMock;
|
||||
import io.quarkus.test.junit.QuarkusTest;
|
||||
import jakarta.inject.Inject;
|
||||
import org.eclipse.microprofile.rest.client.inject.RestClient;
|
||||
import org.junit.jupiter.api.DisplayName;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
|
||||
@QuarkusTest
|
||||
class AdminUserServiceTest {
|
||||
|
||||
@Inject
|
||||
AdminUserService adminUserService;
|
||||
|
||||
@InjectMock
|
||||
@RestClient
|
||||
UserServiceClient userServiceClient;
|
||||
|
||||
@InjectMock
|
||||
@RestClient
|
||||
RoleServiceClient roleServiceClient;
|
||||
|
||||
@Test
|
||||
@DisplayName("searchUsers appelle le client rest UserService")
|
||||
void searchUsers_callsClient() {
|
||||
UserSearchResultDTO mockResult = new UserSearchResultDTO();
|
||||
Mockito.when(userServiceClient.searchUsers(any())).thenReturn(mockResult);
|
||||
|
||||
UserSearchResultDTO result = adminUserService.searchUsers(0, 10, "test");
|
||||
|
||||
assertThat(result).isNotNull();
|
||||
Mockito.verify(userServiceClient).searchUsers(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("getUserById retourne l'utilisateur via le client")
|
||||
void getUserById_returnsUser() {
|
||||
String userId = UUID.randomUUID().toString();
|
||||
UserDTO mockUser = new UserDTO();
|
||||
mockUser.setId(userId);
|
||||
mockUser.setUsername("testuser");
|
||||
|
||||
Mockito.when(userServiceClient.getUserById(eq(userId), any())).thenReturn(mockUser);
|
||||
|
||||
UserDTO result = adminUserService.getUserById(userId);
|
||||
|
||||
assertThat(result).isNotNull();
|
||||
assertThat(result.getUsername()).isEqualTo("testuser");
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("createUser appelle le client pour la création")
|
||||
void createUser_callsClient() {
|
||||
UserDTO user = new UserDTO();
|
||||
user.setUsername("newuser");
|
||||
|
||||
Mockito.when(userServiceClient.createUser(any(), any())).thenReturn(user);
|
||||
|
||||
UserDTO result = adminUserService.createUser(user);
|
||||
|
||||
assertThat(result).isNotNull();
|
||||
assertThat(result.getUsername()).isEqualTo("newuser");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user