fix(tests): replace record-style accessors with JavaBean getters in server-api tests
All response DTOs were converted from records to @Data classes for JSF/EL compatibility. Updated 8 test files to use getters instead of record component accessors. Also added isActif() method to MembreSummaryResponse (Boolean wrapper needs explicit isActif() since Lombok generates getActif()). Fixed ConversationResponseTest builder calls: .isMuted() → .muted(), and MessageResponseTest builder calls: .isEdited() → .edited(), .isDeleted() → .deleted().
This commit is contained in:
@@ -95,6 +95,11 @@ public class MembreSummaryResponse {
|
||||
return "secondary";
|
||||
}
|
||||
|
||||
/** Retourne true si le membre est actif (null traité comme false). */
|
||||
public boolean isActif() {
|
||||
return actif != null && actif;
|
||||
}
|
||||
|
||||
/** Icône PrimeIcons calculée depuis {@link #getRoles()}. */
|
||||
public String getTypeIcon() {
|
||||
if (roles == null || roles.isEmpty()) return "pi pi-user";
|
||||
|
||||
@@ -40,28 +40,28 @@ class ConversationResponseTest {
|
||||
.organisationId(orgId)
|
||||
.lastMessage(lastMessage)
|
||||
.unreadCount(5)
|
||||
.isMuted(true)
|
||||
.isPinned(false)
|
||||
.isArchived(false)
|
||||
.muted(true)
|
||||
.pinned(false)
|
||||
.archived(false)
|
||||
.createdAt(createdAt)
|
||||
.updatedAt(updatedAt)
|
||||
.avatarUrl("https://example.com/avatar.jpg")
|
||||
.build();
|
||||
|
||||
assertThat(response.id()).isEqualTo(id);
|
||||
assertThat(response.name()).isEqualTo("Conversation Test");
|
||||
assertThat(response.description()).isEqualTo("Description test");
|
||||
assertThat(response.type()).isEqualTo(ConversationType.GROUP);
|
||||
assertThat(response.participantIds()).containsExactly(participant1, participant2);
|
||||
assertThat(response.organisationId()).isEqualTo(orgId);
|
||||
assertThat(response.lastMessage()).isEqualTo(lastMessage);
|
||||
assertThat(response.unreadCount()).isEqualTo(5);
|
||||
assertThat(response.getId()).isEqualTo(id);
|
||||
assertThat(response.getName()).isEqualTo("Conversation Test");
|
||||
assertThat(response.getDescription()).isEqualTo("Description test");
|
||||
assertThat(response.getType()).isEqualTo(ConversationType.GROUP);
|
||||
assertThat(response.getParticipantIds()).containsExactly(participant1, participant2);
|
||||
assertThat(response.getOrganisationId()).isEqualTo(orgId);
|
||||
assertThat(response.getLastMessage()).isEqualTo(lastMessage);
|
||||
assertThat(response.getUnreadCount()).isEqualTo(5);
|
||||
assertThat(response.isMuted()).isTrue();
|
||||
assertThat(response.isPinned()).isFalse();
|
||||
assertThat(response.isArchived()).isFalse();
|
||||
assertThat(response.createdAt()).isEqualTo(createdAt);
|
||||
assertThat(response.updatedAt()).isEqualTo(updatedAt);
|
||||
assertThat(response.avatarUrl()).isEqualTo("https://example.com/avatar.jpg");
|
||||
assertThat(response.getCreatedAt()).isEqualTo(createdAt);
|
||||
assertThat(response.getUpdatedAt()).isEqualTo(updatedAt);
|
||||
assertThat(response.getAvatarUrl()).isEqualTo("https://example.com/avatar.jpg");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -69,20 +69,20 @@ class ConversationResponseTest {
|
||||
void testBuilderWithNulls() {
|
||||
ConversationResponse response = ConversationResponse.builder().build();
|
||||
|
||||
assertThat(response.id()).isNull();
|
||||
assertThat(response.name()).isNull();
|
||||
assertThat(response.description()).isNull();
|
||||
assertThat(response.type()).isNull();
|
||||
assertThat(response.participantIds()).isNull();
|
||||
assertThat(response.organisationId()).isNull();
|
||||
assertThat(response.lastMessage()).isNull();
|
||||
assertThat(response.unreadCount()).isEqualTo(0);
|
||||
assertThat(response.getId()).isNull();
|
||||
assertThat(response.getName()).isNull();
|
||||
assertThat(response.getDescription()).isNull();
|
||||
assertThat(response.getType()).isNull();
|
||||
assertThat(response.getParticipantIds()).isNull();
|
||||
assertThat(response.getOrganisationId()).isNull();
|
||||
assertThat(response.getLastMessage()).isNull();
|
||||
assertThat(response.getUnreadCount()).isEqualTo(0);
|
||||
assertThat(response.isMuted()).isFalse();
|
||||
assertThat(response.isPinned()).isFalse();
|
||||
assertThat(response.isArchived()).isFalse();
|
||||
assertThat(response.createdAt()).isNull();
|
||||
assertThat(response.updatedAt()).isNull();
|
||||
assertThat(response.avatarUrl()).isNull();
|
||||
assertThat(response.getCreatedAt()).isNull();
|
||||
assertThat(response.getUpdatedAt()).isNull();
|
||||
assertThat(response.getAvatarUrl()).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -51,28 +51,28 @@ class MessageResponseTest {
|
||||
.createdAt(createdAt)
|
||||
.readAt(readAt)
|
||||
.attachments(List.of("file1.pdf", "file2.png"))
|
||||
.isEdited(true)
|
||||
.edited(true)
|
||||
.editedAt(editedAt)
|
||||
.isDeleted(false)
|
||||
.deleted(false)
|
||||
.build();
|
||||
|
||||
assertThat(response.id()).isEqualTo(id);
|
||||
assertThat(response.conversationId()).isEqualTo(conversationId);
|
||||
assertThat(response.senderId()).isEqualTo(senderId);
|
||||
assertThat(response.senderName()).isEqualTo("John Doe");
|
||||
assertThat(response.senderAvatar()).isEqualTo("https://example.com/avatar.jpg");
|
||||
assertThat(response.content()).isEqualTo("Message content");
|
||||
assertThat(response.type()).isEqualTo(MessageType.INDIVIDUAL);
|
||||
assertThat(response.status()).isEqualTo(MessageStatus.READ);
|
||||
assertThat(response.priority()).isEqualTo(MessagePriority.HIGH);
|
||||
assertThat(response.recipientIds()).containsExactly(recipient1, recipient2);
|
||||
assertThat(response.recipientRoles()).containsExactly("ADMIN", "USER");
|
||||
assertThat(response.organisationId()).isEqualTo(orgId);
|
||||
assertThat(response.createdAt()).isEqualTo(createdAt);
|
||||
assertThat(response.readAt()).isEqualTo(readAt);
|
||||
assertThat(response.attachments()).containsExactly("file1.pdf", "file2.png");
|
||||
assertThat(response.getId()).isEqualTo(id);
|
||||
assertThat(response.getConversationId()).isEqualTo(conversationId);
|
||||
assertThat(response.getSenderId()).isEqualTo(senderId);
|
||||
assertThat(response.getSenderName()).isEqualTo("John Doe");
|
||||
assertThat(response.getSenderAvatar()).isEqualTo("https://example.com/avatar.jpg");
|
||||
assertThat(response.getContent()).isEqualTo("Message content");
|
||||
assertThat(response.getType()).isEqualTo(MessageType.INDIVIDUAL);
|
||||
assertThat(response.getStatus()).isEqualTo(MessageStatus.READ);
|
||||
assertThat(response.getPriority()).isEqualTo(MessagePriority.HIGH);
|
||||
assertThat(response.getRecipientIds()).containsExactly(recipient1, recipient2);
|
||||
assertThat(response.getRecipientRoles()).containsExactly("ADMIN", "USER");
|
||||
assertThat(response.getOrganisationId()).isEqualTo(orgId);
|
||||
assertThat(response.getCreatedAt()).isEqualTo(createdAt);
|
||||
assertThat(response.getReadAt()).isEqualTo(readAt);
|
||||
assertThat(response.getAttachments()).containsExactly("file1.pdf", "file2.png");
|
||||
assertThat(response.isEdited()).isTrue();
|
||||
assertThat(response.editedAt()).isEqualTo(editedAt);
|
||||
assertThat(response.getEditedAt()).isEqualTo(editedAt);
|
||||
assertThat(response.isDeleted()).isFalse();
|
||||
}
|
||||
|
||||
@@ -81,23 +81,23 @@ class MessageResponseTest {
|
||||
void testBuilderWithNulls() {
|
||||
MessageResponse response = MessageResponse.builder().build();
|
||||
|
||||
assertThat(response.id()).isNull();
|
||||
assertThat(response.conversationId()).isNull();
|
||||
assertThat(response.senderId()).isNull();
|
||||
assertThat(response.senderName()).isNull();
|
||||
assertThat(response.senderAvatar()).isNull();
|
||||
assertThat(response.content()).isNull();
|
||||
assertThat(response.type()).isNull();
|
||||
assertThat(response.status()).isNull();
|
||||
assertThat(response.priority()).isNull();
|
||||
assertThat(response.recipientIds()).isNull();
|
||||
assertThat(response.recipientRoles()).isNull();
|
||||
assertThat(response.organisationId()).isNull();
|
||||
assertThat(response.createdAt()).isNull();
|
||||
assertThat(response.readAt()).isNull();
|
||||
assertThat(response.attachments()).isNull();
|
||||
assertThat(response.getId()).isNull();
|
||||
assertThat(response.getConversationId()).isNull();
|
||||
assertThat(response.getSenderId()).isNull();
|
||||
assertThat(response.getSenderName()).isNull();
|
||||
assertThat(response.getSenderAvatar()).isNull();
|
||||
assertThat(response.getContent()).isNull();
|
||||
assertThat(response.getType()).isNull();
|
||||
assertThat(response.getStatus()).isNull();
|
||||
assertThat(response.getPriority()).isNull();
|
||||
assertThat(response.getRecipientIds()).isNull();
|
||||
assertThat(response.getRecipientRoles()).isNull();
|
||||
assertThat(response.getOrganisationId()).isNull();
|
||||
assertThat(response.getCreatedAt()).isNull();
|
||||
assertThat(response.getReadAt()).isNull();
|
||||
assertThat(response.getAttachments()).isNull();
|
||||
assertThat(response.isEdited()).isFalse();
|
||||
assertThat(response.editedAt()).isNull();
|
||||
assertThat(response.getEditedAt()).isNull();
|
||||
assertThat(response.isDeleted()).isFalse();
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ import org.junit.jupiter.api.Nested;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* Tests unitaires pour CotisationSummaryResponse (record).
|
||||
* Tests unitaires pour CotisationSummaryResponse.
|
||||
*
|
||||
* @author UnionFlow Team
|
||||
* @version 1.0
|
||||
@@ -51,16 +51,16 @@ class CotisationSummaryResponseTest {
|
||||
);
|
||||
|
||||
assertThat(response).isNotNull();
|
||||
assertThat(response.id()).isEqualTo(id);
|
||||
assertThat(response.numeroReference()).isEqualTo("COT-2026-001");
|
||||
assertThat(response.nomMembre()).isEqualTo("Jean Dupont");
|
||||
assertThat(response.montantDu()).isEqualTo(new BigDecimal("50000.00"));
|
||||
assertThat(response.montantPaye()).isEqualTo(new BigDecimal("30000.00"));
|
||||
assertThat(response.statut()).isEqualTo("EN_COURS");
|
||||
assertThat(response.statutLibelle()).isEqualTo("Paiement en cours");
|
||||
assertThat(response.dateEcheance()).isEqualTo(LocalDate.of(2026, 12, 31));
|
||||
assertThat(response.annee()).isEqualTo(2026);
|
||||
assertThat(response.actif()).isTrue();
|
||||
assertThat(response.getId()).isEqualTo(id);
|
||||
assertThat(response.getNumeroReference()).isEqualTo("COT-2026-001");
|
||||
assertThat(response.getNomMembre()).isEqualTo("Jean Dupont");
|
||||
assertThat(response.getMontantDu()).isEqualTo(new BigDecimal("50000.00"));
|
||||
assertThat(response.getMontantPaye()).isEqualTo(new BigDecimal("30000.00"));
|
||||
assertThat(response.getStatut()).isEqualTo("EN_COURS");
|
||||
assertThat(response.getStatutLibelle()).isEqualTo("Paiement en cours");
|
||||
assertThat(response.getDateEcheance()).isEqualTo(LocalDate.of(2026, 12, 31));
|
||||
assertThat(response.getAnnee()).isEqualTo(2026);
|
||||
assertThat(response.getActif()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -80,16 +80,16 @@ class CotisationSummaryResponseTest {
|
||||
);
|
||||
|
||||
assertThat(response).isNotNull();
|
||||
assertThat(response.id()).isNull();
|
||||
assertThat(response.numeroReference()).isNull();
|
||||
assertThat(response.nomMembre()).isNull();
|
||||
assertThat(response.montantDu()).isNull();
|
||||
assertThat(response.montantPaye()).isNull();
|
||||
assertThat(response.statut()).isNull();
|
||||
assertThat(response.statutLibelle()).isNull();
|
||||
assertThat(response.dateEcheance()).isNull();
|
||||
assertThat(response.annee()).isNull();
|
||||
assertThat(response.actif()).isNull();
|
||||
assertThat(response.getId()).isNull();
|
||||
assertThat(response.getNumeroReference()).isNull();
|
||||
assertThat(response.getNomMembre()).isNull();
|
||||
assertThat(response.getMontantDu()).isNull();
|
||||
assertThat(response.getMontantPaye()).isNull();
|
||||
assertThat(response.getStatut()).isNull();
|
||||
assertThat(response.getStatutLibelle()).isNull();
|
||||
assertThat(response.getDateEcheance()).isNull();
|
||||
assertThat(response.getAnnee()).isNull();
|
||||
assertThat(response.getActif()).isNull();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -213,8 +213,8 @@ class CotisationSummaryResponseTest {
|
||||
true
|
||||
);
|
||||
|
||||
assertThat(response.montantDu()).isEqualTo(response.montantPaye());
|
||||
assertThat(response.statut()).isEqualTo("PAYE");
|
||||
assertThat(response.getMontantDu()).isEqualTo(response.getMontantPaye());
|
||||
assertThat(response.getStatut()).isEqualTo("PAYE");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -233,8 +233,8 @@ class CotisationSummaryResponseTest {
|
||||
true
|
||||
);
|
||||
|
||||
assertThat(response.montantPaye()).isLessThan(response.montantDu());
|
||||
assertThat(response.statut()).isEqualTo("EN_COURS");
|
||||
assertThat(response.getMontantPaye()).isLessThan(response.getMontantDu());
|
||||
assertThat(response.getStatut()).isEqualTo("EN_COURS");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -253,8 +253,8 @@ class CotisationSummaryResponseTest {
|
||||
true
|
||||
);
|
||||
|
||||
assertThat(response.montantPaye()).isEqualByComparingTo(BigDecimal.ZERO);
|
||||
assertThat(response.statut()).isEqualTo("IMPAYE");
|
||||
assertThat(response.getMontantPaye()).isEqualByComparingTo(BigDecimal.ZERO);
|
||||
assertThat(response.getStatut()).isEqualTo("IMPAYE");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -275,8 +275,8 @@ class CotisationSummaryResponseTest {
|
||||
true
|
||||
);
|
||||
|
||||
assertThat(response.dateEcheance()).isBefore(LocalDate.now());
|
||||
assertThat(response.statut()).isEqualTo("RETARD");
|
||||
assertThat(response.getDateEcheance()).isBefore(LocalDate.now());
|
||||
assertThat(response.getStatut()).isEqualTo("RETARD");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,8 +10,8 @@ import org.junit.jupiter.api.Test;
|
||||
class MembreDashboardSyntheseResponseTest {
|
||||
|
||||
@Test
|
||||
@DisplayName("Record MembreDashboardSyntheseResponse : construction et accesseurs")
|
||||
void record_constructionAndAccessors() {
|
||||
@DisplayName("MembreDashboardSyntheseResponse : construction et getters")
|
||||
void constructionAndGetters() {
|
||||
MembreDashboardSyntheseResponse dto = new MembreDashboardSyntheseResponse(
|
||||
"Jean",
|
||||
"Dupont",
|
||||
@@ -35,20 +35,20 @@ class MembreDashboardSyntheseResponseTest {
|
||||
100
|
||||
);
|
||||
|
||||
assertThat(dto.prenom()).isEqualTo("Jean");
|
||||
assertThat(dto.nom()).isEqualTo("Dupont");
|
||||
assertThat(dto.dateInscription()).isEqualTo(LocalDate.of(2023, 1, 15));
|
||||
assertThat(dto.mesCotisationsPaiement()).isEqualByComparingTo(BigDecimal.valueOf(50000));
|
||||
assertThat(dto.totalCotisationsPayeesAnnee()).isEqualByComparingTo(BigDecimal.valueOf(150000));
|
||||
assertThat(dto.totalCotisationsPayeesToutTemps()).isEqualByComparingTo(BigDecimal.valueOf(200000));
|
||||
assertThat(dto.nombreCotisationsPayees()).isEqualTo(5);
|
||||
assertThat(dto.statutCotisations()).isEqualTo("À jour");
|
||||
assertThat(dto.tauxCotisationsPerso()).isEqualTo(100);
|
||||
assertThat(dto.monSoldeEpargne()).isEqualByComparingTo(BigDecimal.valueOf(250000));
|
||||
assertThat(dto.objectifEpargne()).isEqualTo(500000);
|
||||
assertThat(dto.mesEvenementsInscrits()).isEqualTo(3);
|
||||
assertThat(dto.tauxParticipationPerso()).isEqualTo(75);
|
||||
assertThat(dto.mesDemandesAide()).isEqualTo(1);
|
||||
assertThat(dto.tauxAidesApprouvees()).isEqualTo(100);
|
||||
assertThat(dto.getPrenom()).isEqualTo("Jean");
|
||||
assertThat(dto.getNom()).isEqualTo("Dupont");
|
||||
assertThat(dto.getDateInscription()).isEqualTo(LocalDate.of(2023, 1, 15));
|
||||
assertThat(dto.getMesCotisationsPaiement()).isEqualByComparingTo(BigDecimal.valueOf(50000));
|
||||
assertThat(dto.getTotalCotisationsPayeesAnnee()).isEqualByComparingTo(BigDecimal.valueOf(150000));
|
||||
assertThat(dto.getTotalCotisationsPayeesToutTemps()).isEqualByComparingTo(BigDecimal.valueOf(200000));
|
||||
assertThat(dto.getNombreCotisationsPayees()).isEqualTo(5);
|
||||
assertThat(dto.getStatutCotisations()).isEqualTo("À jour");
|
||||
assertThat(dto.getTauxCotisationsPerso()).isEqualTo(100);
|
||||
assertThat(dto.getMonSoldeEpargne()).isEqualByComparingTo(BigDecimal.valueOf(250000));
|
||||
assertThat(dto.getObjectifEpargne()).isEqualTo(500000);
|
||||
assertThat(dto.getMesEvenementsInscrits()).isEqualTo(3);
|
||||
assertThat(dto.getTauxParticipationPerso()).isEqualTo(75);
|
||||
assertThat(dto.getMesDemandesAide()).isEqualTo(1);
|
||||
assertThat(dto.getTauxAidesApprouvees()).isEqualTo(100);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,14 @@ class MembreSummaryResponseTest {
|
||||
// ── nomComplet ─────────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("nomComplet()")
|
||||
@DisplayName("getNomComplet()")
|
||||
class NomComplet {
|
||||
|
||||
@Test
|
||||
@DisplayName("prenom + nom concaténés")
|
||||
void nominal() {
|
||||
MembreSummaryResponse r = make("ACTIF", List.of());
|
||||
assertThat(r.nomComplet()).isEqualTo("Jean Dupont");
|
||||
assertThat(r.getNomComplet()).isEqualTo("Jean Dupont");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -39,7 +39,7 @@ class MembreSummaryResponseTest {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, "Dupont", null,
|
||||
null, null, null, null, null, false, List.of(), null, null, null);
|
||||
assertThat(r.nomComplet()).isEqualTo("Dupont");
|
||||
assertThat(r.getNomComplet()).isEqualTo("Dupont");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -48,7 +48,7 @@ class MembreSummaryResponseTest {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, "Jean", null, null,
|
||||
null, null, null, null, null, false, List.of(), null, null, null);
|
||||
assertThat(r.nomComplet()).isEqualTo("Jean");
|
||||
assertThat(r.getNomComplet()).isEqualTo("Jean");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -57,7 +57,7 @@ class MembreSummaryResponseTest {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, null, null,
|
||||
null, null, null, null, null, false, List.of(), null, null, null);
|
||||
assertThat(r.nomComplet()).isEmpty();
|
||||
assertThat(r.getNomComplet()).isEmpty();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,42 +68,42 @@ class MembreSummaryResponseTest {
|
||||
class AliasStatut {
|
||||
|
||||
@Test
|
||||
@DisplayName("statut() retourne statutCompte")
|
||||
@DisplayName("getStatut() retourne getStatutCompte()")
|
||||
void statut() {
|
||||
MembreSummaryResponse r = make("ACTIF", List.of());
|
||||
assertThat(r.statut()).isEqualTo(r.statutCompte());
|
||||
assertThat(r.getStatut()).isEqualTo(r.getStatutCompte());
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("statutLibelle() retourne statutCompteLibelle")
|
||||
@DisplayName("getStatutLibelle() retourne getStatutCompteLibelle()")
|
||||
void statutLibelle() {
|
||||
MembreSummaryResponse r = make("ACTIF", List.of());
|
||||
assertThat(r.statutLibelle()).isEqualTo(r.statutCompteLibelle());
|
||||
assertThat(r.getStatutLibelle()).isEqualTo(r.getStatutCompteLibelle());
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("statutSeverity() retourne statutCompteSeverity")
|
||||
@DisplayName("getStatutSeverity() retourne getStatutCompteSeverity()")
|
||||
void statutSeverity() {
|
||||
MembreSummaryResponse r = make("ACTIF", List.of());
|
||||
assertThat(r.statutSeverity()).isEqualTo(r.statutCompteSeverity());
|
||||
assertThat(r.getStatutSeverity()).isEqualTo(r.getStatutCompteSeverity());
|
||||
}
|
||||
}
|
||||
|
||||
// ── statutIcon ─────────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("statutIcon()")
|
||||
@DisplayName("getStatutIcon()")
|
||||
class StatutIcon {
|
||||
|
||||
@Test void actif() { assertThat(make("ACTIF", List.of()).statutIcon()).isEqualTo("pi pi-check-circle"); }
|
||||
@Test void inactif() { assertThat(make("INACTIF", List.of()).statutIcon()).isEqualTo("pi pi-pause-circle"); }
|
||||
@Test void suspendu() { assertThat(make("SUSPENDU", List.of()).statutIcon()).isEqualTo("pi pi-ban"); }
|
||||
@Test void radie() { assertThat(make("RADIE", List.of()).statutIcon()).isEqualTo("pi pi-times-circle"); }
|
||||
@Test void actif() { assertThat(make("ACTIF", List.of()).getStatutIcon()).isEqualTo("pi pi-check-circle"); }
|
||||
@Test void inactif() { assertThat(make("INACTIF", List.of()).getStatutIcon()).isEqualTo("pi pi-pause-circle"); }
|
||||
@Test void suspendu() { assertThat(make("SUSPENDU", List.of()).getStatutIcon()).isEqualTo("pi pi-ban"); }
|
||||
@Test void radie() { assertThat(make("RADIE", List.of()).getStatutIcon()).isEqualTo("pi pi-times-circle"); }
|
||||
|
||||
@Test
|
||||
@DisplayName("statut inconnu → pi pi-question-circle")
|
||||
void inconnu() {
|
||||
assertThat(make("AUTRE", List.of()).statutIcon()).isEqualTo("pi pi-question-circle");
|
||||
assertThat(make("AUTRE", List.of()).getStatutIcon()).isEqualTo("pi pi-question-circle");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -112,96 +112,96 @@ class MembreSummaryResponseTest {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, null, null,
|
||||
null, null, null, null, null, false, List.of(), null, null, null);
|
||||
assertThat(r.statutIcon()).isEqualTo("pi pi-question-circle");
|
||||
assertThat(r.getStatutIcon()).isEqualTo("pi pi-question-circle");
|
||||
}
|
||||
}
|
||||
|
||||
// ── typeMembre ─────────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("typeMembre()")
|
||||
@DisplayName("getTypeMembre()")
|
||||
class TypeMembre {
|
||||
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).typeMembre()).isEqualTo("Président"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).typeMembre()).isEqualTo("Vice-Président"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).typeMembre()).isEqualTo("Secrétaire"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).typeMembre()).isEqualTo("Trésorier"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).typeMembre()).isEqualTo("Administrateur"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).typeMembre()).isEqualTo("Modérateur"); }
|
||||
@Test void membreActif() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).typeMembre()).isEqualTo("Membre"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).typeMembre()).isEqualTo("Membre"); }
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).getTypeMembre()).isEqualTo("Président"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).getTypeMembre()).isEqualTo("Vice-Président"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).getTypeMembre()).isEqualTo("Secrétaire"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).getTypeMembre()).isEqualTo("Trésorier"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).getTypeMembre()).isEqualTo("Administrateur"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).getTypeMembre()).isEqualTo("Modérateur"); }
|
||||
@Test void membreActif() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).getTypeMembre()).isEqualTo("Membre"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).getTypeMembre()).isEqualTo("Membre"); }
|
||||
@Test void rolesNull() {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, null, null,
|
||||
null, null, null, null, null, false, null, null, null, null);
|
||||
assertThat(r.typeMembre()).isEqualTo("Membre");
|
||||
assertThat(r.getTypeMembre()).isEqualTo("Membre");
|
||||
}
|
||||
}
|
||||
|
||||
// ── typeSeverity ───────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("typeSeverity()")
|
||||
@DisplayName("getTypeSeverity()")
|
||||
class TypeSeverity {
|
||||
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).typeSeverity()).isEqualTo("primary"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).typeSeverity()).isEqualTo("primary"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).typeSeverity()).isEqualTo("info"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).typeSeverity()).isEqualTo("warning"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).typeSeverity()).isEqualTo("danger"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).typeSeverity()).isEqualTo("warning"); }
|
||||
@Test void roleDefault() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).typeSeverity()).isEqualTo("secondary"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).typeSeverity()).isEqualTo("secondary"); }
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).getTypeSeverity()).isEqualTo("primary"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).getTypeSeverity()).isEqualTo("primary"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).getTypeSeverity()).isEqualTo("info"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).getTypeSeverity()).isEqualTo("warning"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).getTypeSeverity()).isEqualTo("danger"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).getTypeSeverity()).isEqualTo("warning"); }
|
||||
@Test void roleDefault() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).getTypeSeverity()).isEqualTo("secondary"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).getTypeSeverity()).isEqualTo("secondary"); }
|
||||
@Test void rolesNull() {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, null, null,
|
||||
null, null, null, null, null, false, null, null, null, null);
|
||||
assertThat(r.typeSeverity()).isEqualTo("secondary");
|
||||
assertThat(r.getTypeSeverity()).isEqualTo("secondary");
|
||||
}
|
||||
}
|
||||
|
||||
// ── typeIcon ───────────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("typeIcon()")
|
||||
@DisplayName("getTypeIcon()")
|
||||
class TypeIcon {
|
||||
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).typeIcon()).isEqualTo("pi pi-star"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).typeIcon()).isEqualTo("pi pi-star"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).typeIcon()).isEqualTo("pi pi-file-edit"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).typeIcon()).isEqualTo("pi pi-wallet"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).typeIcon()).isEqualTo("pi pi-shield"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).typeIcon()).isEqualTo("pi pi-wrench"); }
|
||||
@Test void roleDefault() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).typeIcon()).isEqualTo("pi pi-user"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).typeIcon()).isEqualTo("pi pi-user"); }
|
||||
@Test void president() { assertThat(make("ACTIF", List.of("PRESIDENT")).getTypeIcon()).isEqualTo("pi pi-star"); }
|
||||
@Test void vicePresident() { assertThat(make("ACTIF", List.of("VICE_PRESIDENT")).getTypeIcon()).isEqualTo("pi pi-star"); }
|
||||
@Test void secretaire() { assertThat(make("ACTIF", List.of("SECRETAIRE")).getTypeIcon()).isEqualTo("pi pi-file-edit"); }
|
||||
@Test void tresorier() { assertThat(make("ACTIF", List.of("TRESORIER")).getTypeIcon()).isEqualTo("pi pi-wallet"); }
|
||||
@Test void adminOrg() { assertThat(make("ACTIF", List.of("ADMIN_ORGANISATION")).getTypeIcon()).isEqualTo("pi pi-shield"); }
|
||||
@Test void moderateur() { assertThat(make("ACTIF", List.of("MODERATEUR")).getTypeIcon()).isEqualTo("pi pi-wrench"); }
|
||||
@Test void roleDefault() { assertThat(make("ACTIF", List.of("MEMBRE_ACTIF")).getTypeIcon()).isEqualTo("pi pi-user"); }
|
||||
@Test void rolesVide() { assertThat(make("ACTIF", List.of()).getTypeIcon()).isEqualTo("pi pi-user"); }
|
||||
@Test void rolesNull() {
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, null, null, null,
|
||||
null, null, null, null, null, false, null, null, null, null);
|
||||
assertThat(r.typeIcon()).isEqualTo("pi pi-user");
|
||||
assertThat(r.getTypeIcon()).isEqualTo("pi pi-user");
|
||||
}
|
||||
}
|
||||
|
||||
// ── dateAdhesion ───────────────────────────────────────────────────────
|
||||
|
||||
@Nested
|
||||
@DisplayName("dateAdhesion()")
|
||||
@DisplayName("getDateAdhesion()")
|
||||
class DateAdhesion {
|
||||
|
||||
@Test
|
||||
@DisplayName("dateAdhesion est accessible via le composant record")
|
||||
@DisplayName("dateAdhesion est accessible via le getter")
|
||||
void accesseur() {
|
||||
LocalDate date = LocalDate.of(2024, 3, 15);
|
||||
MembreSummaryResponse r = new MembreSummaryResponse(
|
||||
UUID.randomUUID(), null, "Jean", "Dupont", null,
|
||||
null, null, "ACTIF", null, null, true, List.of(), null, null, date);
|
||||
assertThat(r.dateAdhesion()).isEqualTo(date);
|
||||
assertThat(r.getDateAdhesion()).isEqualTo(date);
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("dateAdhesion null par défaut")
|
||||
void nullParDefaut() {
|
||||
assertThat(make("ACTIF", List.of()).dateAdhesion()).isNull();
|
||||
assertThat(make("ACTIF", List.of()).getDateAdhesion()).isNull();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -250,17 +250,17 @@ class MembreSummaryResponseTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@DisplayName("getters calculés délèguent aux méthodes calculées")
|
||||
@DisplayName("getters calculés retournent les valeurs attendues")
|
||||
void gettersCalcules() {
|
||||
MembreSummaryResponse r = make("ACTIF", List.of("PRESIDENT"));
|
||||
assertThat(r.getNomComplet()).isEqualTo(r.nomComplet());
|
||||
assertThat(r.getStatut()).isEqualTo(r.statut());
|
||||
assertThat(r.getStatutLibelle()).isEqualTo(r.statutLibelle());
|
||||
assertThat(r.getStatutSeverity()).isEqualTo(r.statutSeverity());
|
||||
assertThat(r.getStatutIcon()).isEqualTo(r.statutIcon());
|
||||
assertThat(r.getTypeMembre()).isEqualTo(r.typeMembre());
|
||||
assertThat(r.getTypeSeverity()).isEqualTo(r.typeSeverity());
|
||||
assertThat(r.getTypeIcon()).isEqualTo(r.typeIcon());
|
||||
assertThat(r.getNomComplet()).isEqualTo("Jean Dupont");
|
||||
assertThat(r.getStatut()).isEqualTo("ACTIF");
|
||||
assertThat(r.getStatutLibelle()).isEqualTo("ACTIF_libelle");
|
||||
assertThat(r.getStatutSeverity()).isEqualTo("ACTIF_severity");
|
||||
assertThat(r.getStatutIcon()).isEqualTo("pi pi-check-circle");
|
||||
assertThat(r.getTypeMembre()).isEqualTo("Président");
|
||||
assertThat(r.getTypeSeverity()).isEqualTo("primary");
|
||||
assertThat(r.getTypeIcon()).isEqualTo("pi pi-star");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import org.junit.jupiter.api.Test;
|
||||
class OrganisationSummaryResponseTest {
|
||||
|
||||
@Test
|
||||
void testRecord_AllFields() {
|
||||
void testAllFields() {
|
||||
UUID id = UUID.randomUUID();
|
||||
|
||||
OrganisationSummaryResponse response = new OrganisationSummaryResponse(
|
||||
@@ -24,20 +24,20 @@ class OrganisationSummaryResponseTest {
|
||||
true
|
||||
);
|
||||
|
||||
assertThat(response.id()).isEqualTo(id);
|
||||
assertThat(response.nom()).isEqualTo("Mutuelle du Futur");
|
||||
assertThat(response.nomCourt()).isEqualTo("MDF");
|
||||
assertThat(response.typeOrganisation()).isEqualTo("MUTUELLE");
|
||||
assertThat(response.typeOrganisationLibelle()).isEqualTo("Mutuelle");
|
||||
assertThat(response.statut()).isEqualTo("ACTIF");
|
||||
assertThat(response.statutLibelle()).isEqualTo("Actif");
|
||||
assertThat(response.statutSeverity()).isEqualTo("success");
|
||||
assertThat(response.nombreMembres()).isEqualTo(150);
|
||||
assertThat(response.actif()).isTrue();
|
||||
assertThat(response.getId()).isEqualTo(id);
|
||||
assertThat(response.getNom()).isEqualTo("Mutuelle du Futur");
|
||||
assertThat(response.getNomCourt()).isEqualTo("MDF");
|
||||
assertThat(response.getTypeOrganisation()).isEqualTo("MUTUELLE");
|
||||
assertThat(response.getTypeOrganisationLibelle()).isEqualTo("Mutuelle");
|
||||
assertThat(response.getStatut()).isEqualTo("ACTIF");
|
||||
assertThat(response.getStatutLibelle()).isEqualTo("Actif");
|
||||
assertThat(response.getStatutSeverity()).isEqualTo("success");
|
||||
assertThat(response.getNombreMembres()).isEqualTo(150);
|
||||
assertThat(response.getActif()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
void testRecord_Equals() {
|
||||
void testEquals() {
|
||||
UUID id = UUID.randomUUID();
|
||||
|
||||
OrganisationSummaryResponse response1 = new OrganisationSummaryResponse(
|
||||
@@ -53,7 +53,7 @@ class OrganisationSummaryResponseTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void testRecord_ToString() {
|
||||
void testToString() {
|
||||
OrganisationSummaryResponse response = new OrganisationSummaryResponse(
|
||||
UUID.randomUUID(), "Org", "ORG", "TYPE", "Type",
|
||||
"ACTIF", "Actif", "success", 100, true
|
||||
@@ -67,14 +67,14 @@ class OrganisationSummaryResponseTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void testRecord_WithNullValues() {
|
||||
void testWithNullValues() {
|
||||
OrganisationSummaryResponse response = new OrganisationSummaryResponse(
|
||||
UUID.randomUUID(), "Org", null, "TYPE", "Type",
|
||||
"ACTIF", "Actif", "success", null, false
|
||||
);
|
||||
|
||||
assertThat(response.nomCourt()).isNull();
|
||||
assertThat(response.nombreMembres()).isNull();
|
||||
assertThat(response.actif()).isFalse();
|
||||
assertThat(response.getNomCourt()).isNull();
|
||||
assertThat(response.getNombreMembres()).isNull();
|
||||
assertThat(response.getActif()).isFalse();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,14 +24,14 @@ class IntentionStatutResponseTest {
|
||||
.build();
|
||||
|
||||
assertThat(response).isNotNull();
|
||||
assertThat(response.intentionId()).isEqualTo(intentionId);
|
||||
assertThat(response.statut()).isEqualTo("COMPLETEE");
|
||||
assertThat(response.waveLaunchUrl()).isEqualTo("https://pay.wave.com/c/cos-abc123");
|
||||
assertThat(response.waveCheckoutSessionId()).isEqualTo("cos-abc123");
|
||||
assertThat(response.waveTransactionId()).isEqualTo("TCN4Y4ZC3FM");
|
||||
assertThat(response.montant()).isEqualByComparingTo(new BigDecimal("5000"));
|
||||
assertThat(response.referenceCotisation()).isEqualTo("COT-2025-001");
|
||||
assertThat(response.message()).isEqualTo("Paiement confirmé !");
|
||||
assertThat(response.getIntentionId()).isEqualTo(intentionId);
|
||||
assertThat(response.getStatut()).isEqualTo("COMPLETEE");
|
||||
assertThat(response.getWaveLaunchUrl()).isEqualTo("https://pay.wave.com/c/cos-abc123");
|
||||
assertThat(response.getWaveCheckoutSessionId()).isEqualTo("cos-abc123");
|
||||
assertThat(response.getWaveTransactionId()).isEqualTo("TCN4Y4ZC3FM");
|
||||
assertThat(response.getMontant()).isEqualByComparingTo(new BigDecimal("5000"));
|
||||
assertThat(response.getReferenceCotisation()).isEqualTo("COT-2025-001");
|
||||
assertThat(response.getMessage()).isEqualTo("Paiement confirmé !");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -47,11 +47,11 @@ class IntentionStatutResponseTest {
|
||||
.message("En attente de confirmation Wave...")
|
||||
.build();
|
||||
|
||||
assertThat(response.intentionId()).isEqualTo(intentionId);
|
||||
assertThat(response.statut()).isEqualTo("EN_COURS");
|
||||
assertThat(response.waveLaunchUrl()).isEqualTo("https://pay.wave.com/c/cos-xyz789");
|
||||
assertThat(response.waveTransactionId()).isNull();
|
||||
assertThat(response.referenceCotisation()).isNull();
|
||||
assertThat(response.getIntentionId()).isEqualTo(intentionId);
|
||||
assertThat(response.getStatut()).isEqualTo("EN_COURS");
|
||||
assertThat(response.getWaveLaunchUrl()).isEqualTo("https://pay.wave.com/c/cos-xyz789");
|
||||
assertThat(response.getWaveTransactionId()).isNull();
|
||||
assertThat(response.getReferenceCotisation()).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -65,10 +65,10 @@ class IntentionStatutResponseTest {
|
||||
.message("Session Wave expirée")
|
||||
.build();
|
||||
|
||||
assertThat(response.statut()).isEqualTo("EXPIREE");
|
||||
assertThat(response.waveLaunchUrl()).isNull();
|
||||
assertThat(response.waveCheckoutSessionId()).isNull();
|
||||
assertThat(response.waveTransactionId()).isNull();
|
||||
assertThat(response.getStatut()).isEqualTo("EXPIREE");
|
||||
assertThat(response.getWaveLaunchUrl()).isNull();
|
||||
assertThat(response.getWaveCheckoutSessionId()).isNull();
|
||||
assertThat(response.getWaveTransactionId()).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -10,7 +10,7 @@ import org.junit.jupiter.api.Test;
|
||||
class PaiementSummaryResponseTest {
|
||||
|
||||
@Test
|
||||
void testRecord_AllFields() {
|
||||
void testAllFields() {
|
||||
UUID id = UUID.randomUUID();
|
||||
LocalDateTime datePaiement = LocalDateTime.now();
|
||||
|
||||
@@ -26,19 +26,19 @@ class PaiementSummaryResponseTest {
|
||||
datePaiement
|
||||
);
|
||||
|
||||
assertThat(response.id()).isEqualTo(id);
|
||||
assertThat(response.numeroReference()).isEqualTo("PAY-2026-001");
|
||||
assertThat(response.montant()).isEqualByComparingTo(new BigDecimal("5000.00"));
|
||||
assertThat(response.codeDevise()).isEqualTo("XOF");
|
||||
assertThat(response.methodePaiementLibelle()).isEqualTo("Carte bancaire");
|
||||
assertThat(response.statutPaiement()).isEqualTo("REUSSI");
|
||||
assertThat(response.statutPaiementLibelle()).isEqualTo("Réussi");
|
||||
assertThat(response.statutPaiementSeverity()).isEqualTo("success");
|
||||
assertThat(response.datePaiement()).isEqualTo(datePaiement);
|
||||
assertThat(response.getId()).isEqualTo(id);
|
||||
assertThat(response.getNumeroReference()).isEqualTo("PAY-2026-001");
|
||||
assertThat(response.getMontant()).isEqualByComparingTo(new BigDecimal("5000.00"));
|
||||
assertThat(response.getCodeDevise()).isEqualTo("XOF");
|
||||
assertThat(response.getMethodePaiementLibelle()).isEqualTo("Carte bancaire");
|
||||
assertThat(response.getStatutPaiement()).isEqualTo("REUSSI");
|
||||
assertThat(response.getStatutPaiementLibelle()).isEqualTo("Réussi");
|
||||
assertThat(response.getStatutPaiementSeverity()).isEqualTo("success");
|
||||
assertThat(response.getDatePaiement()).isEqualTo(datePaiement);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testRecord_Equals() {
|
||||
void testEquals() {
|
||||
UUID id = UUID.randomUUID();
|
||||
LocalDateTime date = LocalDateTime.now();
|
||||
|
||||
@@ -57,7 +57,7 @@ class PaiementSummaryResponseTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void testRecord_ToString() {
|
||||
void testToString() {
|
||||
PaiementSummaryResponse response = new PaiementSummaryResponse(
|
||||
UUID.randomUUID(), "PAY-001", new BigDecimal("1000.00"), "XOF",
|
||||
"Wave", "REUSSI", "Réussi", "success", LocalDateTime.now()
|
||||
|
||||
Reference in New Issue
Block a user