diff --git a/design_pattern/src/tests/ConcreteStrategieDefensifTest.java b/design_pattern/src/tests/ConcreteStrategieDefensifTest.java new file mode 100644 index 0000000000000000000000000000000000000000..c2428313074a339740ab85d5d2552098d241cd98 --- /dev/null +++ b/design_pattern/src/tests/ConcreteStrategieDefensifTest.java @@ -0,0 +1,53 @@ +package tests; + +import modele.*; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class ConcreteStrategieDefensifTest { + private ConcreteStrategieDefensif concreteStrategieDefensif; + private Epee epee; + private Sorcier sorcier1; + private Sorcier sorcier2; + private Roi roi; + private BatonDeSorcier batonDeSorcier; + private BaguetteMagique baguetteMagique; + private Guerrier guerrier; + private Guerisseur guerisseur; + private Equipe equipe; + @BeforeEach + void setUp() { + concreteStrategieDefensif = new ConcreteStrategieDefensif(); + epee = new Epee(20, "epee", 2.0, 10); + baguetteMagique = new BaguetteMagique(10, "baguette", 1.0,10); + batonDeSorcier = new BatonDeSorcier(15, "baton", 1.5, "pouvoir"); + roi = new Roi(100, 1, "roi", epee, 20, "royaume"); + guerrier = new Guerrier(80, 1, "guerrier", epee, 30); + guerisseur = new Guerisseur(50, 1, "gueisseur", baguetteMagique, 40); + sorcier1 = new Sorcier(40, 1, "sorcier", batonDeSorcier, 20); + sorcier2 = new Sorcier(40, 1, "sorcier2", batonDeSorcier, 20); + equipe = new Equipe("equipe"); + equipe.ajouter(roi); + equipe.ajouter(sorcier1); + equipe.ajouter(sorcier2); + } + + @Test + void attaquer() { + int pointDeVieAvantAttaque = roi.getPointsDeVie(); + sorcier1.setStrategie(concreteStrategieDefensif); + roi.setStrategie(concreteStrategieDefensif); + sorcier1.attaquer(roi); + assertNotEquals(pointDeVieAvantAttaque, roi.getPointsDeVie()); + } + + @Test + void subir() { + guerisseur.setStrategie(concreteStrategieDefensif); + int pointDeVieAvantSubir = guerisseur.getPointsDeVie(); + guerisseur.subir(10); + assertNotEquals(pointDeVieAvantSubir, guerisseur.getPointsDeVie()); + } +} \ No newline at end of file