Bonjour,

je tente de faire passer un test sur l'une de mes classes, mais sans succès

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
    @Test
    public void testUtilisateurFemme() {
        Utilisateur util = new Utilisateur("Dupont", "Jeanne", "jd@jd.com", "F", date);
        assertTrue(validator.validate(util).size() == 0);
    }
 
    @Test
    public void testUtilisateurHomme() {
        Utilisateur util = new Utilisateur("Durand", "Jacques", "jd@jd.com", "M", date);
        assertTrue(validator.validate(util).size() == 0);
    }
Dans ma classe Utilisateur j'ai ceci comme expression sur la variable concernée

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
@NotNull
@Pattern(regexp="M|F")
String sexe;

Malgré ceci, les deux tests ne passent pas.

Il y en a également un autre que je n'arrive pas à faire passer, mais là c'est surtout car je ne vois pas comment

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    @Test
    public void testUtilisateurSansDate() {
        Utilisateur util = new Utilisateur("Durand", "Jacques", "jd@jd.com", "M");
        assertTrue(validator.validate(util).size() == 0);
    }
L'idée est de pouvoir avoir un utilisateur sans date.

J'ai donc deux constructeurs dans ma classe utilisateur, l'un avec une date et l'autre sans une date.

J'aurais donc besoin d'une annotation pour signifier que le champ est optionnel, mais les seules annotations dont j'ai à ma connaissance ne me permettent pas de faire ceci : http://docs.oracle.com/javaee/6/tutorial/doc/gircz.html


Merci pour votre aide !