Refactoring - Version stable

This commit is contained in:
dahoud
2026-03-28 15:15:24 +00:00
parent 607d31d2fc
commit 4d096a4791
4 changed files with 158 additions and 12 deletions

View File

@@ -108,8 +108,8 @@ class MembreServiceTest {
class CreerMembreTests {
@Test
@DisplayName("Happy path: numéro généré automatiquement, statut ACTIF")
void creerMembre_generatesNumeroAndSetsActif() {
@DisplayName("Happy path: numéro généré automatiquement, statut EN_ATTENTE_VALIDATION")
void creerMembre_generatesNumeroAndSetsEnAttenteValidation() {
Membre membre = new Membre();
membre.setEmail("test@unionflow.dev");
membre.setNom("Doe");
@@ -123,8 +123,8 @@ class MembreServiceTest {
Membre created = membreService.creerMembre(membre);
assertThat(created.getNumeroMembre()).startsWith("UF");
assertThat(created.getStatutCompte()).isEqualTo("ACTIF");
assertThat(created.getActif()).isTrue();
assertThat(created.getStatutCompte()).isEqualTo("EN_ATTENTE_VALIDATION");
assertThat(created.getActif()).isFalse();
verify(membreRepository).persist(membre);
}
@@ -205,6 +205,47 @@ class MembreServiceTest {
}
}
// =========================================================================
// activerMembre
// =========================================================================
@Nested
@DisplayName("activerMembre")
class ActiverMembreTests {
@Test
@DisplayName("Happy path: membre EN_ATTENTE_VALIDATION → ACTIF + actif=true")
void activerMembre_pendingMember_setsActif() {
UUID id = UUID.randomUUID();
Membre membre = membreFixture("pending@unionflow.dev");
membre.setId(id);
membre.setStatutCompte("EN_ATTENTE_VALIDATION");
membre.setActif(false);
when(membreRepository.findByIdOptional(id)).thenReturn(Optional.of(membre));
doNothing().when(membreRepository).persist(any(Membre.class));
Membre activated = membreService.activerMembre(id);
assertThat(activated.getStatutCompte()).isEqualTo("ACTIF");
assertThat(activated.getActif()).isTrue();
verify(membreRepository).persist(membre);
}
@Test
@DisplayName("Membre introuvable: lève NotFoundException")
void activerMembre_notFound_throws() {
UUID id = UUID.randomUUID();
when(membreRepository.findByIdOptional(id)).thenReturn(Optional.empty());
assertThatThrownBy(() -> membreService.activerMembre(id))
.isInstanceOf(jakarta.ws.rs.NotFoundException.class)
.hasMessageContaining("non trouvé");
verify(membreRepository, never()).persist(any(Membre.class));
}
}
// =========================================================================
// mettreAJourMembre
// =========================================================================