4 Commits

10 changed files with 67 additions and 36 deletions

View File

@@ -2,7 +2,11 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package com.mycompany.bibliotheque.Contrôle; package com.mycompany.bibliotheque.Controle;
import com.mycompany.bibliotheque.Metier.Livre;
import com.mycompany.bibliotheque.Metier.Utilisateur;
import java.util.Scanner;
/** /**
* Classe de contrôle de la classe Livre * Classe de contrôle de la classe Livre
@@ -47,9 +51,15 @@ public class LivreValide {
// 3. Auteur : non vide et pas de chiffres ou caractères spéciaux // 3. Auteur : non vide et pas de chiffres ou caractères spéciaux
public static boolean isValidAuteur(String auteur) { public static boolean isValidAuteur(String auteur) {
// TODO: implémenter la validation //verification que auteur n'est pas vide ou null
if (auteur == null || auteur.isBlank()) {
return false; return false;
} }
//ajout d'un pattern pour avoir uniquement des minuscules/majuscules
String pattern = "^[a-zA-Z]+$";
//verification boolean que le nom d'auteur corresponde au patterne
return auteur.matches(pattern);
}
// 4. Titre : longueur maximale 200 caractères // 4. Titre : longueur maximale 200 caractères
public static boolean isLongueurTitreValid(String titre) { public static boolean isLongueurTitreValid(String titre) {
@@ -63,8 +73,8 @@ public class LivreValide {
// 5. Titre : non null et au moins 2 caractères // 5. Titre : non null et au moins 2 caractères
public static boolean isContenuTitreValide(String titre) { public static boolean isContenuTitreValide(String titre) {
// TODO Steve: implémenter la validation // TODO Steve: implémenter la validation
if (titre == null) { if (titre == null) {
return false; return false;
} }
@@ -72,4 +82,19 @@ public class LivreValide {
return contenuValide; return contenuValide;
} }
public static boolean retourLivre(Utilisateur user){
Scanner sc = new Scanner(System.in);
int i=0;
for(Livre unLivre:user.getEmprunts()){
i++;
System.out.println(i+". "+unLivre.getTitre());
}
System.out.print("Merci de faire votre choix : ");
int choix = sc.nextInt();
Livre leLivre = user.getEmprunts().get(choix-1);
leLivre.setEmprunte(false);
user.getEmprunts().remove(leLivre);
return leLivre.isEmprunte();
}
} }

View File

@@ -10,10 +10,10 @@ package com.mycompany.bibliotheque;
*/ */
import com.mycompany.bibliotheque.Métier.Bibliotheque; import com.mycompany.bibliotheque.Metier.Bibliotheque;
import com.mycompany.bibliotheque.Métier.Emprunt; import com.mycompany.bibliotheque.Metier.Emprunt;
import com.mycompany.bibliotheque.Métier.Utilisateur; import com.mycompany.bibliotheque.Metier.Utilisateur;
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
import java.util.Scanner; import java.util.Scanner;
public class GestionBibliotheque { public class GestionBibliotheque {

View File

@@ -2,7 +2,7 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package com.mycompany.bibliotheque.Métier; package com.mycompany.bibliotheque.Metier;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;

View File

@@ -2,10 +2,10 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package com.mycompany.bibliotheque.Métier; package com.mycompany.bibliotheque.Metier;
import com.mycompany.bibliotheque.Métier.Utilisateur; import com.mycompany.bibliotheque.Metier.Utilisateur;
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
/** /**
* *

View File

@@ -2,7 +2,7 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package com.mycompany.bibliotheque.Métier; package com.mycompany.bibliotheque.Metier;
/** /**
* *

View File

@@ -2,14 +2,14 @@
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/ */
package com.mycompany.bibliotheque.Métier; package com.mycompany.bibliotheque.Metier;
/** /**
* *
* @author dthev * @author dthev
*/ */
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;

View File

@@ -4,8 +4,8 @@
*/ */
package com.mycompany.bibliotheque; package com.mycompany.bibliotheque;
import com.mycompany.bibliotheque.Métier.Bibliotheque; import com.mycompany.bibliotheque.Metier.Bibliotheque;
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
import java.util.List; import java.util.List;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;

View File

@@ -4,7 +4,7 @@
*/ */
package com.mycompany.bibliotheque; package com.mycompany.bibliotheque;
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import static org.junit.Assert.*; import static org.junit.Assert.*;

View File

@@ -4,7 +4,7 @@
*/ */
package com.mycompany.bibliotheque; package com.mycompany.bibliotheque;
import com.mycompany.bibliotheque.Contrôle.LivreValide; import com.mycompany.bibliotheque.Controle.LivreValide;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import static org.junit.Assert.*; import static org.junit.Assert.*;
@@ -115,15 +115,27 @@ public class LivreValideTest {
* Test of isValidAuteur method, of class LivreValide. * Test of isValidAuteur method, of class LivreValide.
* @author Medhi/Steve * @author Medhi/Steve
*/ */
@Test @Test
public void testIsValidAuteur() { public void testIsValidAuteur() {
System.out.println("isValidAuteur"); System.out.println("isValidAuteur");
String auteur = "";
boolean expResult = false; //Verification Bonne
boolean result = LivreValide.isValidAuteur(auteur); String auteurTrue = "George";
assertEquals(expResult, result); boolean expResult = true;
// TODO review the generated test code and remove the default call to fail. boolean result = LivreValide.isValidAuteur(auteurTrue);
fail("The test case is a prototype."); assertEquals("Cas d'utilisation prévu",expResult, result);
//Verification avec un nombre
String auteurFalse1 = "George4";
boolean expResult1 = false;
boolean result1 = LivreValide.isValidAuteur(auteurFalse1);
assertEquals("Non valide car un nombre est présent", expResult1,result1);
//Verification avec des caractères spéciaux
String auteurFalse2 = "George_";
boolean expResult2 = false;
boolean result2 = LivreValide.isValidAuteur(auteurFalse2);
assertEquals("Non valide car des caractères spéciaux sont présent", expResult2,result2);
} }
/** /**
@@ -143,7 +155,7 @@ public class LivreValideTest {
System.out.println("Titre invalide. Aucune valeur n'a été saisie\n"); System.out.println("Titre invalide. Aucune valeur n'a été saisie\n");
//test 2 : titre inférieur à 200 //test 2 : titre inférieur à 200
System.out.println("Test avec aucune valeur saisie"); System.out.println("Test avec valeur saisie OK");
String titre2 = "Hadal Blacksite bestiary"; String titre2 = "Hadal Blacksite bestiary";
boolean expResult2 = true; boolean expResult2 = true;
boolean result2 = LivreValide.isLongueurTitreValid(titre2); boolean result2 = LivreValide.isLongueurTitreValid(titre2);
@@ -159,13 +171,7 @@ public class LivreValideTest {
} }
@Test
public void testIsContenuTitreValid() {
System.out.println("isLongueurTitreValid");
String titre = "";
boolean expResult = false;
boolean result = LivreValide.isLongueurTitreValid(titre);
}
/** /**
* Test of isTitreValid method, of class LivreValide. * Test of isTitreValid method, of class LivreValide.
* @author Steve * @author Steve

View File

@@ -4,8 +4,8 @@
*/ */
package com.mycompany.bibliotheque; package com.mycompany.bibliotheque;
import com.mycompany.bibliotheque.Métier.Utilisateur; import com.mycompany.bibliotheque.Metier.Utilisateur;
import com.mycompany.bibliotheque.Métier.Livre; import com.mycompany.bibliotheque.Metier.Livre;
import java.util.List; import java.util.List;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;