màj pour version initialeV2

This commit is contained in:
2025-09-24 10:27:24 +02:00
parent 62092bb78b
commit 4189d05e82
6 changed files with 24 additions and 214 deletions

View File

@@ -1,33 +0,0 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
*/
package com.mycompany.bibliotheque;
/**
*
* @author dthev
*/
import java.util.Scanner;
public class Bibliotheque {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Livre l1 = new Livre("1984", 10.0);
Utilisateur u1 = new Utilisateur("Alice");
System.out.println("Bienvenue dans la bibliothèque !");
System.out.println("1. Afficher un livre");
System.out.println("2. Emprunter un livre");
System.out.println("Votre choix : ");
int choix = sc.nextInt();
if (choix == 1) {
System.out.println("Livre : " + l1.getTitre());
} else if (choix == 2) {
boolean ok = Emprunt.effectuerEmprunt(u1, l1);
System.out.println(ok ? "Emprunt réussi !" : "Échec de l'emprunt.");
}
}
}

View File

@@ -1,25 +0,0 @@
/*
* 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
*/
package com.mycompany.bibliotheque;
/**
*
* @author dthev
*/
public class Emprunt {
// TODO: logique métier d'emprunt
public static boolean effectuerEmprunt(Utilisateur u, Livre l) {
if (l.isEmprunte()) {
return false; // déjà emprunté
}
if (u.getEmprunts().size() >= 3) {
return false; // trop de livres empruntés
}
l.setEmprunte(true);
return u.emprunterLivre(l);
}
}

View File

@@ -11,35 +11,40 @@ package com.mycompany.bibliotheque;
public class Livre { public class Livre {
private String titre; private String titre;
private double prixHT; private String auteur;
private boolean emprunte; private String isbn; // ISBN sous forme de chaîne
public Livre(String titre, double prixHT) { public Livre(String titre, String auteur, String isbn) {
this.titre = titre; this.titre = titre;
this.prixHT = prixHT; this.auteur = auteur;
this.emprunte = false; this.isbn = isbn;
} }
public String getTitre() { public String getTitre() {
return titre; return titre;
} }
public double getPrixHT() { public void setTitre(String titre) {
return prixHT; this.titre = titre;
} }
public boolean isEmprunte() { public String getAuteur() {
return emprunte; return auteur;
} }
public void setEmprunte(boolean emprunte) { public void setAuteur(String auteur) {
this.emprunte = emprunte; this.auteur = auteur;
} }
// TODO: calculer le prix TTC avec une TVA de 5.5% public String getIsbn() {
public double getPrixTTC() { return isbn;
return 0.0; // à compléter
} }
public void setIsbn(String isbn) {
this.isbn = isbn;
}
} }

View File

@@ -1,36 +0,0 @@
/*
* 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
*/
package com.mycompany.bibliotheque;
/**
*
* @author dthev
*/
import java.util.ArrayList;
import java.util.List;
public class Utilisateur {
private String nom;
private List<Livre> emprunts;
public Utilisateur(String nom) {
this.nom = nom;
this.emprunts = new ArrayList<>();
}
public String getNom() {
return nom;
}
public List<Livre> getEmprunts() {
return emprunts;
}
// TODO: ajouter un emprunt si l'utilisateur a moins de 3 livres
public boolean emprunterLivre(Livre livre) {
return false; // à compléter
}
}

View File

@@ -4,49 +4,16 @@
*/ */
package com.mycompany.bibliotheque; package com.mycompany.bibliotheque;
import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import static org.junit.Assert.*; import static org.junit.Assert.*;
public class LivreTest { public class LivreTest {
private Livre livre;
@Before
public void setUp() {
// Création d'un livre avant chaque test
livre = new Livre("Java Basics", 20.0);
}
@Test @Test
public void testGetTitre() { public void testBookCreation() {
assertEquals("pb titre","Java Basic", livre.getTitre()); Livre b = new Livre("1984", "George Orwell", "1234567890123");
} assertEquals("1984", b.getTitre());
assertEquals("George Orwell", b.getAuteur());
@Test assertEquals("1234567890123", b.getIsbn());
public void testGetPrixHT() {
// Vérification du prix HT arrondi à 3 décimales
}
@Test
public void testIsEmprunte() {
// Par défaut, le livre n'est pas emprunté
assertFalse(livre.isEmprunte());
}
@Test
public void testSetEmprunte() {
livre.setEmprunte(true);
assertTrue(livre.isEmprunte());
livre.setEmprunte(false);
assertFalse(livre.isEmprunte());
}
@Test
public void testGetPrixTTC() {
// Calcul du prix TTC avec TVA 5.5% arrondi à 2 décimales
} }
} }

View File

@@ -1,68 +0,0 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/UnitTests/JUnit4TestClass.java to edit this template
*/
package com.mycompany.bibliotheque;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
/**
*
* @author dthev
*/
public class UtilisateurTest {
public UtilisateurTest() {
}
@Before
public void setUp() {
}
/**
* Test of getNom method, of class Utilisateur.
*/
@Test
public void testGetNom() {
System.out.println("getNom");
Utilisateur instance = null;
String expResult = "";
String result = instance.getNom();
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}
/**
* Test of getEmprunts method, of class Utilisateur.
*/
@Test
public void testGetEmprunts() {
System.out.println("getEmprunts");
Utilisateur instance = null;
List<Livre> expResult = null;
List<Livre> result = instance.getEmprunts();
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}
/**
* Test of emprunterLivre method, of class Utilisateur.
*/
@Test
public void testEmprunterLivre() {
System.out.println("emprunterLivre");
Livre livre = null;
Utilisateur instance = null;
boolean expResult = false;
boolean result = instance.emprunterLivre(livre);
assertEquals(expResult, result);
// TODO review the generated test code and remove the default call to fail.
fail("The test case is a prototype.");
}
}