61 lines
2.1 KiB
Java
61 lines
2.1 KiB
Java
package pckg.Backend;
|
|
|
|
import pckg.Backend.Produkt;
|
|
import pckg.Backend.Warenkorb;
|
|
import pckg.Backend.Bestellung;
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
import org.junit.jupiter.api.BeforeEach;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
|
|
class BestellungTest {
|
|
|
|
private Warenkorb warenkorb;
|
|
private Produkt apfel;
|
|
private Produkt birne;
|
|
|
|
@BeforeEach
|
|
void setUp() {
|
|
// Mock-Daten vorbereiten: Wir brauchen Produkte und einen Warenkorb
|
|
apfel = new Produkt(1, "Apfel", 0.2, 1.50, 7, 100);
|
|
birne = new Produkt(2, "Birne", 0.2, 2.00, 7, 100);
|
|
|
|
warenkorb = new Warenkorb();
|
|
warenkorb.produktHinzufügen(apfel, 2); // 3.00€
|
|
warenkorb.produktHinzufügen(birne, 1); // 2.00€
|
|
// Gesamtpreis sollte 5.00€ sein
|
|
}
|
|
|
|
@Test
|
|
void testBestellungInitialisierung() {
|
|
Bestellung bestellung = new Bestellung("Max Mustermann", "Musterstraße 1, Berlin", warenkorb);
|
|
|
|
assertEquals("Max Mustermann", bestellung.getName());
|
|
assertEquals("Musterstraße 1, Berlin", bestellung.getAdresse());
|
|
assertEquals(5.00, bestellung.getGesamtpreis(), 0.001, "Der Gesamtpreis wurde nicht korrekt übernommen.");
|
|
assertEquals(warenkorb, bestellung.getWarenkorb());
|
|
}
|
|
|
|
@Test
|
|
void testWarenkorbLeeren() {
|
|
Bestellung bestellung = new Bestellung("Max Mustermann", "Musterstraße 1", warenkorb);
|
|
|
|
// Sicherstellen, dass der Warenkorb vor dem Leeren nicht leer ist
|
|
assertFalse(bestellung.getWarenkorb().getPositionen().isEmpty());
|
|
|
|
// Methode ausführen
|
|
bestellung.warenkorbLeeren();
|
|
|
|
// Prüfen, ob die Liste der Positionen jetzt leer ist
|
|
assertTrue(bestellung.getWarenkorb().getPositionen().isEmpty(),
|
|
"Der Warenkorb sollte nach dem Aufruf von warenkorbLeeren() leer sein.");
|
|
}
|
|
|
|
@Test
|
|
void testEmptyConstructor() {
|
|
Bestellung leer = new Bestellung();
|
|
assertNull(leer.getName());
|
|
assertNull(leer.getWarenkorb());
|
|
assertEquals(0.0, leer.getGesamtpreis());
|
|
}
|
|
} |