92 lines
3.0 KiB
Java
92 lines
3.0 KiB
Java
package dev.lions.user.manager.mapper;
|
|
|
|
import dev.lions.user.manager.dto.role.RoleDTO;
|
|
import dev.lions.user.manager.enums.role.TypeRole;
|
|
import org.junit.jupiter.api.Test;
|
|
import org.keycloak.representations.idm.RoleRepresentation;
|
|
|
|
import java.util.Arrays;
|
|
import java.util.Collections;
|
|
import java.util.List;
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
/**
|
|
* Tests supplémentaires pour RoleMapper pour améliorer la couverture
|
|
*/
|
|
class RoleMapperAdditionalTest {
|
|
|
|
@Test
|
|
void testToDTO_WithAllFields() {
|
|
RoleRepresentation roleRep = new RoleRepresentation();
|
|
roleRep.setId("role-123");
|
|
roleRep.setName("admin");
|
|
roleRep.setDescription("Administrator role");
|
|
roleRep.setComposite(false);
|
|
|
|
RoleDTO dto = RoleMapper.toDTO(roleRep, "test-realm", TypeRole.REALM_ROLE);
|
|
|
|
assertNotNull(dto);
|
|
assertEquals("role-123", dto.getId());
|
|
assertEquals("admin", dto.getName());
|
|
assertEquals("Administrator role", dto.getDescription());
|
|
assertEquals(TypeRole.REALM_ROLE, dto.getTypeRole());
|
|
assertFalse(dto.getComposite());
|
|
}
|
|
|
|
@Test
|
|
void testToDTO_WithNullFields() {
|
|
RoleRepresentation roleRep = new RoleRepresentation();
|
|
roleRep.setId("role-123");
|
|
roleRep.setName("user");
|
|
|
|
RoleDTO dto = RoleMapper.toDTO(roleRep, "test-realm", TypeRole.REALM_ROLE);
|
|
|
|
assertNotNull(dto);
|
|
assertEquals("role-123", dto.getId());
|
|
assertEquals("user", dto.getName());
|
|
assertNull(dto.getDescription());
|
|
}
|
|
|
|
@Test
|
|
void testToDTOList_Empty() {
|
|
List<RoleDTO> dtos = RoleMapper.toDTOList(Collections.emptyList(), "test-realm", TypeRole.REALM_ROLE);
|
|
|
|
assertNotNull(dtos);
|
|
assertTrue(dtos.isEmpty());
|
|
}
|
|
|
|
@Test
|
|
void testToDTOList_WithRoles() {
|
|
RoleRepresentation role1 = new RoleRepresentation();
|
|
role1.setId("role-1");
|
|
role1.setName("admin");
|
|
RoleRepresentation role2 = new RoleRepresentation();
|
|
role2.setId("role-2");
|
|
role2.setName("user");
|
|
|
|
List<RoleDTO> dtos = RoleMapper.toDTOList(Arrays.asList(role1, role2), "test-realm", TypeRole.REALM_ROLE);
|
|
|
|
assertNotNull(dtos);
|
|
assertEquals(2, dtos.size());
|
|
assertEquals("admin", dtos.get(0).getName());
|
|
assertEquals("user", dtos.get(1).getName());
|
|
}
|
|
|
|
// La méthode toKeycloak() n'existe pas dans RoleMapper
|
|
// Ces tests sont supprimés car la méthode n'est pas disponible
|
|
|
|
/**
|
|
* Couvre RoleMapper.java L13 : le constructeur par défaut implicite de la classe utilitaire.
|
|
* JaCoCo (counter=LINE) marque la déclaration de classe comme non couverte si aucune instance
|
|
* n'est jamais créée.
|
|
*/
|
|
@Test
|
|
void testRoleMapperInstantiation() {
|
|
// Instantie la classe pour couvrir le constructeur par défaut (L13)
|
|
RoleMapper mapper = new RoleMapper();
|
|
assertNotNull(mapper);
|
|
}
|
|
}
|
|
|