JUnit Tests hinzugefuegt - 9/9 bestanden

master
Christian Khazanovych 2026-06-24 16:27:20 +02:00
parent 89e2c320d0
commit 02713beb53
5 changed files with 115 additions and 0 deletions

5
data/kunden.csv 100644
View File

@ -0,0 +1,5 @@
K-000002;Ref GmbH;Str. 1;68163;Mannheim;DE111111111;ref@ref.de;0621-111111;;AKTIV
K-000003;Muster GmbH;Hauptstr. 1;68163;Mannheim;DE123456789;info@muster.de;0621-123456;;AKTIV
K-000004;Edit GmbH;Str. 1;68163;Mannheim;DE333333333;neu@edit.de;0621-333333;;AKTIV
K-000006;Test AG;Teststr. 1;68163;Mannheim;DE987654321;test@test.de;0621-654321;;AKTIV
K-000007;Muster GmbH;Hauptstr. 1;68163;Mannheim;DE123456789;info@muster.de;0621-123456;;AKTIV
1 K-000002 Ref GmbH Str. 1 68163 Mannheim DE111111111 ref@ref.de 0621-111111 AKTIV
2 K-000003 Muster GmbH Hauptstr. 1 68163 Mannheim DE123456789 info@muster.de 0621-123456 AKTIV
3 K-000004 Edit GmbH Str. 1 68163 Mannheim DE333333333 neu@edit.de 0621-333333 AKTIV
4 K-000006 Test AG Teststr. 1 68163 Mannheim DE987654321 test@test.de 0621-654321 AKTIV
5 K-000007 Muster GmbH Hauptstr. 1 68163 Mannheim DE123456789 info@muster.de 0621-123456 AKTIV

View File

@ -0,0 +1 @@
7

BIN
lib/junit.jar 100644

Binary file not shown.

View File

@ -0,0 +1,109 @@
package kundenverwaltung;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.io.TempDir;
import java.nio.file.Path;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
class KundenVerwaltungTest {
private KundenServiceImpl service;
@BeforeEach
void setUp() throws Exception {
service = new KundenServiceImpl();
}
@Test
@DisplayName("TC-01: Kunde anlegen -> ID K-000001 vergeben")
void tc01KundeAnlegen() {
Kunde k = service.kundeAnlegen("Muster GmbH", "Hauptstr. 1", "68163",
"Mannheim", "DE123456789", "info@muster.de", "0621-123456");
assertNotNull(k);
assertNotNull(k.getKundenId());
assertTrue(k.getKundenId().startsWith("K-"));
}
@Test
@DisplayName("TC-03: Speichern ohne E-Mail wird abgelehnt")
void tc03FehlendePflichtfeld() {
Kunde k = service.kundeAnlegen("Muster GmbH", "Hauptstr. 1", "68163",
"Mannheim", "DE123456789", "", "0621-123456");
assertNull(k);
}
@Test
@DisplayName("TC-04: Speichern ohne Name wird abgelehnt")
void tc04FehlenderName() {
Kunde k = service.kundeAnlegen("", "Hauptstr. 1", "68163",
"Mannheim", "DE123456789", "info@muster.de", "0621-123456");
assertNull(k);
}
@Test
@DisplayName("TC-07: Suche nach Name findet Treffer")
void tc07SucheNachName() {
service.kundeAnlegen("Muster GmbH", "Hauptstr. 1", "68163",
"Mannheim", "DE123456789", "info@muster.de", "0621-123456");
List<Kunde> treffer = service.sucheNachName("Muster");
assertFalse(treffer.isEmpty());
assertEquals("Muster GmbH", treffer.get(0).getName());
}
@Test
@DisplayName("TC-08: findeKunde gibt Objekt zurueck")
void tc08FindeKunde() {
Kunde angelegt = service.kundeAnlegen("Test AG", "Teststr. 1", "68163",
"Mannheim", "DE987654321", "test@test.de", "0621-654321");
assertNotNull(angelegt);
Kunde gefunden = service.findeKunde(angelegt.getKundenId());
assertNotNull(gefunden);
assertEquals("Test AG", gefunden.getName());
}
@Test
@DisplayName("TC-09: findeKunde gibt null zurueck fuer unbekannte ID")
void tc09FindeKundeNull() {
Kunde k = service.findeKunde("K-999999");
assertNull(k);
}
@Test
@DisplayName("TC-10: Loeschen referenzierter Kunde wird abgelehnt")
void tc10LoeschsperreReferenzierterKunde() {
Kunde k = service.kundeAnlegen("Ref GmbH", "Str. 1", "68163",
"Mannheim", "DE111111111", "ref@ref.de", "0621-111111");
assertNotNull(k);
k.belegHinzufuegen("R-2026-000001");
boolean geloescht = service.kundeLoschen(k.getKundenId());
assertFalse(geloescht);
}
@Test
@DisplayName("TC-11: Loeschen nicht referenzierter Kunde funktioniert")
void tc11LoeschenErfolgreich() {
Kunde k = service.kundeAnlegen("Temp GmbH", "Str. 1", "68163",
"Mannheim", "DE222222222", "temp@temp.de", "0621-222222");
assertNotNull(k);
boolean geloescht = service.kundeLoschen(k.getKundenId());
assertTrue(geloescht);
assertNull(service.findeKunde(k.getKundenId()));
}
@Test
@DisplayName("TC-06: Kunde bearbeiten aktualisiert E-Mail")
void tc06KundeBearbeiten() {
Kunde k = service.kundeAnlegen("Edit GmbH", "Str. 1", "68163",
"Mannheim", "DE333333333", "alt@edit.de", "0621-333333");
assertNotNull(k);
boolean ok = service.kundeBearbeiten(k.getKundenId(), "Edit GmbH",
"Str. 1", "68163", "Mannheim", "DE333333333", "neu@edit.de", "0621-333333");
assertTrue(ok);
assertEquals("neu@edit.de", service.findeKunde(k.getKundenId()).getEmail());
}
}