From 4148a56f51c12d6540a9cb175041a7c2631485e3 Mon Sep 17 00:00:00 2001
From: rosier8u <basile.rosier6@etu.univ-lorraine>
Date: Tue, 28 Nov 2023 08:37:31 +0100
Subject: [PATCH] ajout de ConcreteStrategieDefensifTest

---
 .../tests/ConcreteStrategieDefensifTest.java  | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 design_pattern/src/tests/ConcreteStrategieDefensifTest.java

diff --git a/design_pattern/src/tests/ConcreteStrategieDefensifTest.java b/design_pattern/src/tests/ConcreteStrategieDefensifTest.java
new file mode 100644
index 0000000..c242831
--- /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
-- 
GitLab