Refactoring - Version stable

This commit is contained in:
dahoud
2026-03-28 16:51:14 +00:00
parent 4d096a4791
commit 40a2dd9728
5 changed files with 296 additions and 0 deletions

View File

@@ -246,6 +246,50 @@ class MembreServiceTest {
}
}
// =========================================================================
// promouvoirAdminOrganisation
// =========================================================================
@Nested
@DisplayName("promouvoirAdminOrganisation")
class PromouvoirAdminOrganisationTests {
@Test
@DisplayName("Happy path: membre promu → ACTIF + actif=true immédiatement")
void promouvoirAdminOrganisation_setsActifImmediately() {
UUID id = UUID.randomUUID();
Membre membre = new Membre();
membre.setId(id);
membre.setEmail("future-admin@unionflow.dev");
membre.setNom("Admin");
membre.setPrenom("New");
membre.setStatutCompte("EN_ATTENTE_VALIDATION");
membre.setActif(false);
when(membreRepository.findByIdOptional(id)).thenReturn(Optional.of(membre));
doNothing().when(membreRepository).persist(any(Membre.class));
Membre result = membreService.promouvoirAdminOrganisation(id);
assertThat(result.getStatutCompte()).isEqualTo("ACTIF");
assertThat(result.getActif()).isTrue();
verify(membreRepository).persist(membre);
}
@Test
@DisplayName("Membre introuvable: lève NotFoundException")
void promouvoirAdminOrganisation_notFound_throws() {
UUID id = UUID.randomUUID();
when(membreRepository.findByIdOptional(id)).thenReturn(Optional.empty());
assertThatThrownBy(() -> membreService.promouvoirAdminOrganisation(id))
.isInstanceOf(jakarta.ws.rs.NotFoundException.class)
.hasMessageContaining("non trouvé");
verify(membreRepository, never()).persist(any(Membre.class));
}
}
// =========================================================================
// mettreAJourMembre
// =========================================================================