Merge pull request 'Testfälle für Narrenkarte-Klasse' (#31) from kts_desktop into main

Reviewed-on: #31
Reviewed-by: Mohammad Hawrami <2210970@stud.hs-mannheim.de>
pull/35/head
Mohammad Hawrami 2023-10-12 08:41:11 +02:00
commit 47bd09f200
2 changed files with 52 additions and 7 deletions

View File

@ -13,7 +13,7 @@ public class Narrenkarte extends Karte {
// Statische Konstanten // Statische Konstanten
// Statische Attribute // Statische Attribute
private static int narrenkarteanzahl = 0;
// Attribute des Objekts // Attribute des Objekts
private Kartenfarbe farbe; private Kartenfarbe farbe;
private String bezeichnung; private String bezeichnung;
@ -25,15 +25,17 @@ public class Narrenkarte extends Karte {
public Narrenkarte(Kartenfarbe farbe, String bezeichnung) { public Narrenkarte(Kartenfarbe farbe, String bezeichnung) {
super(); super();
setFarbe(farbe); if (narrenkarteanzahl < 4) {
setBezeichnung(bezeichnung); setNarrenkarteanzahl(narrenkarteanzahl);
setFarbe(farbe);
setBezeichnung(bezeichnung);
} else {
throw new RuntimeException("Es darf nur vier Narrenkarten geben.");
}
} }
// Statische Methoden // Statische Methoden
// Getter und Setter // Getter und Setter
public int getId() {
return Karte.getId_card();
}
public void setFarbe(Kartenfarbe farbe) { public void setFarbe(Kartenfarbe farbe) {
this.farbe = farbe; this.farbe = farbe;
@ -48,6 +50,10 @@ public class Narrenkarte extends Karte {
public String getBezeichnung() { public String getBezeichnung() {
return this.bezeichnung; return this.bezeichnung;
} }
public void setNarrenkarteanzahl(int narrenkarteanzahl) {
narrenkarteanzahl++;
}
// @Overrides // @Overrides
// Public Methoden // Public Methoden

View File

@ -6,6 +6,45 @@ written on: 10 / 10 / 2023 at: 21:18
*/ */
package Test.Domain.Karten; package Test.Domain.Karten;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThrows;
import org.junit.Test;
import Domain.Enums.Kartenfarbe;
import Domain.Karten.Narrenkarte;
public class NarrenkarteTest { public class NarrenkarteTest {
@Test
public void vierNarren() {
Narrenkarte n1 = new Narrenkarte(Kartenfarbe.MENSCH, "Narr");
Narrenkarte n2 = new Narrenkarte(Kartenfarbe.ELF, "Narr");
Narrenkarte n3 = new Narrenkarte(Kartenfarbe.RIESE, "Narr");
Narrenkarte n4 = new Narrenkarte(Kartenfarbe.ZWERG, "Narr");
assertEquals(n1.getFarbe(), Kartenfarbe.MENSCH);
assertEquals(n2.getFarbe(), Kartenfarbe.ELF);
assertEquals(n3.getFarbe(), Kartenfarbe.RIESE);
assertEquals(n4.getFarbe(), Kartenfarbe.ZWERG);
assertEquals(n1.getBezeichnung(), "Narr");
assertEquals(n2.getBezeichnung(), "Narr");
assertEquals(n3.getBezeichnung(), "Narr");
assertEquals(n4.getBezeichnung(), "Narr");
assertEquals(Kartenfarbe.MENSCH.getFarbe(), "BLAU");
assertEquals(Kartenfarbe.ELF.getFarbe(), "GRÜN");
assertEquals(Kartenfarbe.RIESE.getFarbe(), "GELB");
assertEquals(Kartenfarbe.ZWERG.getFarbe(), "ROT");
}
public void Narrenanzahl() {
Narrenkarte n1 = new Narrenkarte(Kartenfarbe.MENSCH, "Narr");
Narrenkarte n2 = new Narrenkarte(Kartenfarbe.ELF, "Narr");
Narrenkarte n3 = new Narrenkarte(Kartenfarbe.RIESE, "Narr");
Narrenkarte n4 = new Narrenkarte(Kartenfarbe.ZWERG, "Narr");
assertThrows(RuntimeException.class, () -> {Narrenkarte n5 = new Narrenkarte(Kartenfarbe.MENSCH, "Narr");});
}
} }