package dev.lions.user.manager.enums.user;

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

/**
 * Tests unitaires pour StatutUser
 */
class StatutUserTest {

    @Test
    void testValues() {
        StatutUser[] values = StatutUser.values();

        assertNotNull(values);
        assertTrue(values.length > 0);
    }

    @Test
    void testValueOf() {
        StatutUser actif = StatutUser.valueOf("ACTIF");
        StatutUser inactif = StatutUser.valueOf("INACTIF");
        StatutUser suspendu = StatutUser.valueOf("SUSPENDU");

        assertEquals(StatutUser.ACTIF, actif);
        assertEquals(StatutUser.INACTIF, inactif);
        assertEquals(StatutUser.SUSPENDU, suspendu);
    }

    @Test
    void testValueOf_Invalid() {
        assertThrows(IllegalArgumentException.class, () -> {
            StatutUser.valueOf("INVALID");
        });
    }

    @Test
    void testEnumValues() {
        assertNotNull(StatutUser.ACTIF);
        assertNotNull(StatutUser.INACTIF);
        assertNotNull(StatutUser.SUSPENDU);
    }
}
