62 lines
1.5 KiB
Java
62 lines
1.5 KiB
Java
package td5.p1;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import td5.p1.arme.Arme;
|
|
import td5.p1.personnage.Orc;
|
|
import td5.p1.personnage.Personnage;
|
|
import td5.p1.personnage.Tauren;
|
|
|
|
public class testArmes {
|
|
|
|
@Test
|
|
public void test1() {
|
|
Tauren diablon = new Tauren("Diablon", 15);
|
|
Orc azag = new Orc("Azag", 5);
|
|
|
|
diablon.attack(azag);
|
|
azag.attack(diablon);
|
|
assertEquals(100, azag.getHp());
|
|
assertEquals(95, diablon.getHp());
|
|
}
|
|
|
|
@Test
|
|
public void test2() {
|
|
WeaponFactory wf = new WeaponFactory();
|
|
Arme w = wf.createWeapon("SWORD", "excalibur");
|
|
Arme w1 = wf.getWeapon("excalibur");
|
|
assertEquals(w, w1);
|
|
Personnage azag = new Orc("Azag", 5);
|
|
try {
|
|
assertEquals(Class.forName("td5.p1.arme.Epée"), azag.getArme().getClass());
|
|
} catch (ClassNotFoundException e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
@Test
|
|
public void test3() {
|
|
WeaponFactory wp = new WeaponFactory();
|
|
WeaponFactory wp2 = new ModernWeaponFactory();
|
|
String nom = "Ref";
|
|
int i = 0;
|
|
Arme a1 = wp.createWeapon("SWORD", nom + i);
|
|
i++;
|
|
Arme a2 = wp2.createWeapon("Dague", nom + i);
|
|
i++;
|
|
Arme a3 = wp2.createWeapon("Fusil", nom + i);
|
|
i++;
|
|
Arme a4 = wp2.createWeapon("Missil", nom + i); // Type non reconnu
|
|
assertTrue(a1 != null);
|
|
assertTrue(a2 != null);
|
|
assertTrue(a3 != null);
|
|
assertTrue(a4 == null);
|
|
assertEquals(a1, wp.getWeapon(nom + 0)); // On retrouve une arme créée par un autre
|
|
assertEquals(a3, wp.getWeapon(nom + 2));
|
|
}
|
|
|
|
}
|