From b8073b81cb0c8f28b9238270ddf7cb3ffd1f886f Mon Sep 17 00:00:00 2001 From: rosier8u <basile.rosier6@etu.univ-lorraine> Date: Tue, 28 Nov 2023 09:57:58 +0100 Subject: [PATCH] ajout de EtatActifTest --- design_pattern/src/tests/EtatActifTest.java | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 design_pattern/src/tests/EtatActifTest.java diff --git a/design_pattern/src/tests/EtatActifTest.java b/design_pattern/src/tests/EtatActifTest.java new file mode 100644 index 0000000..30f2caa --- /dev/null +++ b/design_pattern/src/tests/EtatActifTest.java @@ -0,0 +1,50 @@ +package tests; + +import modele.BatonDeSorcier; +import modele.DPState.Etat; +import modele.DPState.EtatActif; +import modele.DPState.EtatEndormi; +import modele.DPStrategie.ConcreteStrategieAgressif; +import modele.DPStrategie.ConcreteStrategieNeutre; +import modele.Epee; +import modele.Roi; +import modele.Sorcier; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class EtatActifTest { + private Etat etat; + private EtatActif etatActif; + private ConcreteStrategieNeutre concreteStrategieNeutre; + private Epee epee; + private Sorcier sorcier; + private Roi roi; + private BatonDeSorcier batonDeSorcier; + @BeforeEach + void setUp() { + concreteStrategieNeutre = new ConcreteStrategieNeutre(); + epee = new Epee(20, "epee", 2.0, 10); + batonDeSorcier = new BatonDeSorcier(15, "baton", 1.5, "pouvoir"); + roi = new Roi(100, 1, "roi", epee, 20, "royaume"); + sorcier = new Sorcier(40, 1, "sorcier", batonDeSorcier, 20); + etat = new EtatActif(roi); + etatActif = new EtatActif(sorcier); + + roi.setStrategie(concreteStrategieNeutre); + sorcier.setStrategie(concreteStrategieNeutre); + roi.setEtat(etat); + sorcier.setEtat(etatActif); + + } + + @Test + void actionTour() { + int vieSorcierAttendu = sorcier.getPointsDeVie() - (5*roi.getArme().getDegat()); + for (int i=0; i<5; i++){ + roi.getEtat().actionTour(sorcier); + } + assertEquals(vieSorcierAttendu, sorcier.getPointsDeVie()); + } +} \ No newline at end of file -- GitLab