forked from 2211945/WIZARD_PR2_DOP
Alle Karten incl Test fertig
parent
47bd09f200
commit
860976eeb5
|
@ -10,11 +10,10 @@ import Domain.Enums.Kartenfarbe;
|
||||||
|
|
||||||
public class Magierkarte extends Karte {
|
public class Magierkarte extends Karte {
|
||||||
|
|
||||||
|
|
||||||
// Statische Konstanten
|
// Statische Konstanten
|
||||||
|
|
||||||
// Statische Attribute
|
// Statische Attribute
|
||||||
private static int magierkartenanzahl = 0;
|
|
||||||
// Attribute des Objekts
|
// Attribute des Objekts
|
||||||
private Kartenfarbe kartenfarbe;
|
private Kartenfarbe kartenfarbe;
|
||||||
private String bezeichnung;
|
private String bezeichnung;
|
||||||
|
@ -22,18 +21,14 @@ public class Magierkarte extends Karte {
|
||||||
|
|
||||||
public Magierkarte() {
|
public Magierkarte() {
|
||||||
super();
|
super();
|
||||||
setMagierkartenanzahl(magierkartenanzahl);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Magierkarte(Kartenfarbe kartenfarbe, String bezeichnung) {
|
public Magierkarte(Kartenfarbe kartenfarbe, String bezeichnung) {
|
||||||
super();
|
super();
|
||||||
if (magierkartenanzahl < 4) {
|
|
||||||
setMagierkartenanzahl(magierkartenanzahl);
|
|
||||||
setKartenfarbe(kartenfarbe);
|
setKartenfarbe(kartenfarbe);
|
||||||
setBezeichnung(bezeichnung);
|
setBezeichnung(bezeichnung);
|
||||||
} else {
|
|
||||||
throw new RuntimeException("Es darf nur vier Magier im Spiel geben.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Statische Methoden
|
// Statische Methoden
|
||||||
|
@ -43,6 +38,7 @@ public class Magierkarte extends Karte {
|
||||||
public void setKartenfarbe(Kartenfarbe kartenfarbe) {
|
public void setKartenfarbe(Kartenfarbe kartenfarbe) {
|
||||||
this.kartenfarbe = kartenfarbe;
|
this.kartenfarbe = kartenfarbe;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Kartenfarbe getKartenfarbe() {
|
public Kartenfarbe getKartenfarbe() {
|
||||||
return this.kartenfarbe;
|
return this.kartenfarbe;
|
||||||
}
|
}
|
||||||
|
@ -50,15 +46,11 @@ public class Magierkarte extends Karte {
|
||||||
public void setBezeichnung(String bezeichnung) {
|
public void setBezeichnung(String bezeichnung) {
|
||||||
this.bezeichnung = bezeichnung;
|
this.bezeichnung = bezeichnung;
|
||||||
}
|
}
|
||||||
public String getBezeichnung () {
|
|
||||||
|
public String getBezeichnung() {
|
||||||
return this.bezeichnung;
|
return this.bezeichnung;
|
||||||
}
|
}
|
||||||
public void setMagierkartenanzahl(int magierkartenanzahl) {
|
|
||||||
magierkartenanzahl++;
|
|
||||||
}
|
|
||||||
public int getMagierkartenanzahl() {
|
|
||||||
return magierkartenanzahl;
|
|
||||||
}
|
|
||||||
// @Overrides
|
// @Overrides
|
||||||
|
|
||||||
// Public Methoden
|
// Public Methoden
|
||||||
|
|
|
@ -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,13 +25,9 @@ public class Narrenkarte extends Karte {
|
||||||
|
|
||||||
public Narrenkarte(Kartenfarbe farbe, String bezeichnung) {
|
public Narrenkarte(Kartenfarbe farbe, String bezeichnung) {
|
||||||
super();
|
super();
|
||||||
if (narrenkarteanzahl < 4) {
|
|
||||||
setNarrenkarteanzahl(narrenkarteanzahl);
|
|
||||||
setFarbe(farbe);
|
setFarbe(farbe);
|
||||||
setBezeichnung(bezeichnung);
|
setBezeichnung(bezeichnung);
|
||||||
} else {
|
|
||||||
throw new RuntimeException("Es darf nur vier Narrenkarten geben.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// Statische Methoden
|
// Statische Methoden
|
||||||
|
|
||||||
|
@ -40,6 +36,7 @@ public class Narrenkarte extends Karte {
|
||||||
public void setFarbe(Kartenfarbe farbe) {
|
public void setFarbe(Kartenfarbe farbe) {
|
||||||
this.farbe = farbe;
|
this.farbe = farbe;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Kartenfarbe getFarbe() {
|
public Kartenfarbe getFarbe() {
|
||||||
return this.farbe;
|
return this.farbe;
|
||||||
}
|
}
|
||||||
|
@ -47,13 +44,11 @@ public class Narrenkarte extends Karte {
|
||||||
public void setBezeichnung(String bezeichnung) {
|
public void setBezeichnung(String bezeichnung) {
|
||||||
this.bezeichnung = bezeichnung;
|
this.bezeichnung = bezeichnung;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBezeichnung() {
|
public String getBezeichnung() {
|
||||||
return this.bezeichnung;
|
return this.bezeichnung;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setNarrenkarteanzahl(int narrenkarteanzahl) {
|
|
||||||
narrenkarteanzahl++;
|
|
||||||
}
|
|
||||||
// @Overrides
|
// @Overrides
|
||||||
|
|
||||||
// Public Methoden
|
// Public Methoden
|
||||||
|
|
|
@ -6,6 +6,8 @@ written on: 05 / 10 / 2023 at: 23:30
|
||||||
*/
|
*/
|
||||||
package Domain.Karten;
|
package Domain.Karten;
|
||||||
|
|
||||||
|
import Domain.Enums.Kartenfarbe;
|
||||||
|
|
||||||
public class Zahlenkarte extends Karte {
|
public class Zahlenkarte extends Karte {
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -19,11 +21,22 @@ public class Zahlenkarte extends Karte {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Attribute jedes Objektes
|
// Attribute jedes Objektes
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
private Kartenfarbe farbe;
|
||||||
|
private int kartenNummer;
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Konstruktoren (default und spezifische)
|
// Konstruktoren (default und spezifische)
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
public Zahlenkarte() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Zahlenkarte(Kartenfarbe farbe, int kartenNummer) {
|
||||||
|
super();
|
||||||
|
setFarbe(farbe);
|
||||||
|
setKartenNummer(kartenNummer);
|
||||||
|
|
||||||
|
}
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// statische Methoden
|
// statische Methoden
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
@ -31,6 +44,21 @@ public class Zahlenkarte extends Karte {
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// Getter und Setter
|
// Getter und Setter
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
|
public void setFarbe(Kartenfarbe farbe) {
|
||||||
|
this.farbe = farbe;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Kartenfarbe getFarbe() {
|
||||||
|
return farbe;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setKartenNummer(int kartenNummer) {
|
||||||
|
this.kartenNummer = kartenNummer;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getKartenNummer() {
|
||||||
|
return kartenNummer;
|
||||||
|
}
|
||||||
|
|
||||||
/*------------------------------------------*/
|
/*------------------------------------------*/
|
||||||
// @Overrides
|
// @Overrides
|
||||||
|
|
|
@ -45,12 +45,4 @@ public class MagierkarteTest {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void magierAnzahl() {
|
|
||||||
Magierkarte m1 = new Magierkarte(Kartenfarbe.MENSCH, "Zauberer");
|
|
||||||
Magierkarte m2 = new Magierkarte(Kartenfarbe.ELF, "Zauberer");
|
|
||||||
Magierkarte m3 = new Magierkarte(Kartenfarbe.RIESE, "Zauberer");
|
|
||||||
Magierkarte m4 = new Magierkarte(Kartenfarbe.ZWERG, "Zauberer");
|
|
||||||
|
|
||||||
assertThrows(RuntimeException.class, () -> { Magierkarte m5 = new Magierkarte(Kartenfarbe.MENSCH, "Zauberer");});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,13 +38,4 @@ public class NarrenkarteTest {
|
||||||
assertEquals(Kartenfarbe.RIESE.getFarbe(), "GELB");
|
assertEquals(Kartenfarbe.RIESE.getFarbe(), "GELB");
|
||||||
assertEquals(Kartenfarbe.ZWERG.getFarbe(), "ROT");
|
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");});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,87 @@ written on: 10 / 10 / 2023 at: 21:18
|
||||||
*/
|
*/
|
||||||
package Test.Domain.Karten;
|
package Test.Domain.Karten;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import Domain.Enums.Kartenfarbe;
|
||||||
|
import Domain.Karten.Zahlenkarte;
|
||||||
|
|
||||||
public class ZahlenkarteTest {
|
public class ZahlenkarteTest {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Die Objekterzeugung der HashMap und der Zahlenkarten
|
||||||
|
* kann auch in ein @BeforeAll eingetragen werden.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Der @Test erzeugt Zahlenkarten von 1 bis 13. prüft aber
|
||||||
|
* nur zwei Positionen in der HashMap, um die
|
||||||
|
* Objektdaten zu validieren.
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void dreizehnZahlenkartenMENSCH() {
|
||||||
|
|
||||||
|
HashMap<Integer, Zahlenkarte> zm = new HashMap<Integer, Zahlenkarte>();
|
||||||
|
Zahlenkarte zahlenkarte = null;
|
||||||
|
for (int i = 1; i <= 13; i++) {
|
||||||
|
zahlenkarte = new Zahlenkarte(Kartenfarbe.MENSCH, i);
|
||||||
|
zm.put (i, zahlenkarte);
|
||||||
|
}
|
||||||
|
|
||||||
|
assertEquals(zm.get(7).getFarbe(), Kartenfarbe.MENSCH);
|
||||||
|
assertEquals(zm.get(7).getKartenNummer(), 7);
|
||||||
|
|
||||||
|
assertEquals(zm.get(4).getFarbe(), Kartenfarbe.MENSCH);
|
||||||
|
assertEquals(zm.get(4).getKartenNummer(), 4);
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
public void dreizehnZahlenkartenElf() {
|
||||||
|
HashMap<Integer, Zahlenkarte> ze = new HashMap<Integer, Zahlenkarte>();
|
||||||
|
Zahlenkarte zahlenkarte = null;
|
||||||
|
for (int i = 1; i <= 13; i++) {
|
||||||
|
zahlenkarte = new Zahlenkarte(Kartenfarbe.ELF, i);
|
||||||
|
ze.put (i, zahlenkarte);
|
||||||
|
}
|
||||||
|
|
||||||
|
assertEquals(ze.get(7).getFarbe(), Kartenfarbe.ELF);
|
||||||
|
assertEquals(ze.get(7).getKartenNummer(), 7);
|
||||||
|
|
||||||
|
assertEquals(ze.get(4).getFarbe(), Kartenfarbe.ELF);
|
||||||
|
assertEquals(ze.get(4).getKartenNummer(), 4);
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
public void dreizehnZahlenkartenZWERG() {
|
||||||
|
HashMap<Integer, Zahlenkarte> zz = new HashMap<Integer, Zahlenkarte>();
|
||||||
|
Zahlenkarte zahlenkarte = null;
|
||||||
|
for (int i = 1; i <= 13; i++) {
|
||||||
|
zahlenkarte = new Zahlenkarte(Kartenfarbe.ZWERG, i);
|
||||||
|
zz.put(i, zahlenkarte);
|
||||||
|
}
|
||||||
|
|
||||||
|
assertEquals(zz.get(7).getFarbe(), Kartenfarbe.ZWERG);
|
||||||
|
assertEquals(zz.get(7).getKartenNummer(), 7);
|
||||||
|
|
||||||
|
assertEquals(zz.get(4).getFarbe(), Kartenfarbe.ZWERG);
|
||||||
|
assertEquals(zz.get(4).getKartenNummer(), 4);
|
||||||
|
|
||||||
|
}
|
||||||
|
@Test
|
||||||
|
public void dreizehnZahlenkartenRIESE() {
|
||||||
|
HashMap<Integer, Zahlenkarte> zr = new HashMap<Integer, Zahlenkarte>();
|
||||||
|
Zahlenkarte zahlenkarte = null;
|
||||||
|
for (int i = 1; i <= 13; i++) {
|
||||||
|
zahlenkarte = new Zahlenkarte(Kartenfarbe.RIESE, i);
|
||||||
|
zr.put(i, zahlenkarte);
|
||||||
|
}
|
||||||
|
|
||||||
|
assertEquals(zr.get(9).getFarbe(), Kartenfarbe.RIESE);
|
||||||
|
assertEquals(zr.get(9).getKartenNummer(), 9);
|
||||||
|
|
||||||
|
assertEquals(zr.get(2).getFarbe(), Kartenfarbe.RIESE);
|
||||||
|
assertEquals(zr.get(2).getKartenNummer(), 2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue